2013-03-02 36 views
7

Tôi đang làm việc trên một tiện ích mở rộng của Chrome với Angular và tôi đang cố gắng sử dụng ng-repeat để tạo danh sách các liên kết. Các công trình lớn, ngoại trừ tôi đang gặp vấn đề Populating các liên kết href thuộc tính:ng-href khi điền danh sách các liên kết trong tiện ích mở rộng của Chrome

<ul> 
    <li ng-repeat="item in menu" class="ng-scope"> 
     <a ng-href="#/new" href="unsafe:chrome-extension://ehklbggiaofbhgcghgnmejkpgommihdl/popup.html#/new">Add Link</a> 
    </li> 
    <li ng-repeat="item in menu" class="ng-scope"> 
     <a ng-href="#/bookmarks" href="unsafe:chrome-extension://ehklbggiaofbhgcghgnmejkpgommihdl/popup.html#/bookmarks">My Bookmarks</a> 
    </li> 
</ul> 

Làm thế nào để ngăn chặn những thứ unsafe:chrome-extension khỏi bị chèn? Lưu ý: Tôi có ng-csp được đặt trên thư mục gốc của ứng dụng.

+0

Tôi nghi ngờ nó có liên quan đến Angular. Trong phần mở rộng của tôi khi tôi tạo một liên kết với 'link' Tôi nhận được 'link '. AngularJS không cố gắng thêm vào liên kết tương đối với đường dẫn tuyệt đối, theo như tôi biết. Thẻ của bạn trông như thế nào khi bạn sử dụng href thay vì ng-href. Liên kết có mở trang '#new' như mong đợi không? – Stewie

+0

@stewie Tôi nghĩ rằng mối quan tâm là với phần 'không an toàn: chrome-extension: // ... ', không phải thuộc tính trùng lặp. –

+0

@BrandonTilley Tôi không chắc tại sao bạn hiểu nhận xét của tôi theo cách đó. Tôi hoàn toàn nhận thức được vấn đề 'không an toàn ...'. – Stewie

Trả lời

12

Tôi cũng gặp phải sự cố tương tự ngay bây giờ. Đã không tìm thấy bất kỳ giải pháp nào. Vui lòng kiểm tra liên kết này: https://groups.google.com/forum/?fromgroups=#!topic/angular/YiP02I1wkNU.

theo này, đánh dấu vào app.js trên http://plnkr.co/edit/prTGFiheFI7GXNoDhoGT?p=preview

Mã như:

var app = angular.module('angularjs-starter', []);

app.config(function($compileProvider){ $compileProvider.urlSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|chrome-extension):/); });

Nó làm việc cho tôi.

+0

Làm việc cho tôi, cảm ơn yo. –

+4

Tôi đã nhận được lỗi dưới 1.2.1 - thay đổi từ 'urlSanitizationWhitelist' thành' aHrefSanitizationWhitelist' đã sửa lỗi đó. – Iladarsda

Các vấn đề liên quan