如何正确使用隔离范围属性?
我有一个指令,它是从页面控制器调用的,并带有一个item
传递给它的属性,例如<my-directive item="myItem"></my-directive>
,包含一个id
.
下面的代码将不起作用,因为它似乎$scope.item
在控制器中未定义..就像我使用它太快了一样。当我想使用它时,如何确定它实际上已设置?
app.directive('myDirective', [function() {
return {
restrict: 'E',
templateUrl: 'template.html',
scope: {
item: "="
},
controller: ['$scope', 'ExtendedItemFactory', function($scope, ExtendedItemFactory) {
this.extendedInfo = ExtendedItemFactory.get({ id: $scope.item.id });
}],
controllerAs: 'MyDirectiveCtrl'
};
}]);