Tôi đang cố gắng sử dụng phương thức .component() mới trong góc 1.5. Hiện tại tôi đã tìm thấy ít thông tin về cách sử dụng nó. Các tài liệu góc không đề cập đến nó thực sự hoặc.
Tôi đang cố chuyển phạm vi hoặc đối tượng từ phạm vi đến .component được sử dụng trong phần mẫu của thành phần nhưng chỉ có hai thông số tôi có thể vượt qua là $ element và $ attrs. Tôi đã cố gắng vượt qua đối tượng thông qua một thuộc tính trong html nhưng tất cả tôi nhận được là chuỗi của tên đối tượng.
Tôi đã cố gắng thiết lập nó để được biểu diễn dưới dạng một biến theo những cách
my-attr="item.myVal"
my-attr="{item.myVal}"
my-attr="{{item.myVal}}"
mỗi khi tôi vẫn nhận được chuỗi chữ và không phải là giá trị của biến. Làm thế nào tôi có thể đặt nó để được coi là một biến?
Tôi đã thử chụp dữ liệu qua các kết buộc mới: {} nhưng mẫu của tôi: {} không có quyền truy cập vào các biến đó.
Đây là thành phần của tôi như bây giờ:
export var ItemListAction = {
controller: 'PanelCtrl as itemCtrl',
isolate: false,
template: ($element: any, $attrs: any): any=> {
var myVal: any = $attrs.myAttr; // returns "item.myVal"
var listAction: string = compileListAction();
return listAction;
}
};
Đây là thành phần của tôi trong HTML
<panel-item-list-action my-attr="item.myVal"></panel-item-list-action>
Đây là tuyên bố mô-đun góc cho thành phần: angular.module('Panel', []).component('panelItemListAction', ItemListAction)
Cảm ơn đã phản ứng, là có cách nào để truy cập vào phạm vi, đối tượng, hoặc i biến nside các mẫu: {} tài sản? Blog không đề cập đến điều đó – appthat
Mẫu không cần phạm vi $. Các hàm mẫu trả về HTML. Bạn có thể tiêm $ scope trong controller như mọi khi. – georgeawg
vì vậy bên ngoài cô lập phạm vi, .component() tương tự như ng-include? – appthat