我在angularjs中定义一个指令,该指令具有从数据库中获取数据的url。我显示部分代码。 我的指示是:</ p>
app.directive('getData', function() {
return {
restrict: 'E',
scope: {
url: '@',
suggestion: '=data'
},
controller: ['$scope','$http', function($scope,$http){
$http.get($scope.url)
.success(function (data) {
console.log(data);// display data
$scope.Items = data;
});
})
template:
<li\
suggestion\
ng-repeat="suggestion in suggestions track by $index"\
</li>\
}
现在我在html
中创建了这样的指令<get-data url="/public/getEmployee" data="Items"></get-data>
但不显示数据,而指令控制器中的相同代码在angularjs控制器中正常工作。
答案 0 :(得分:1)
您正在调用指令中的http请求并获取指令内的数据,因此您无需在范围内传递suggestion
变量。
在模板Items
中直接使用item in Items track by $index
数组。
scope
属性中传递的隔离范围变量用于从外部依赖项中获取数据。
您的指令用法应为
<get-data url="/public/getEmployee"></get-data>