Javascript 将json加载的数据作为单向绑定属性传递给指令angularjs
这里是我的上下文:我有一个父控制器,它通过服务加载json数据 通过ng repeat,我通过@attribute将数据传递给一个指令,这样每个指令都有自己的数据副本,这样它就可以修改它,而不会影响父范围中初始加载的数据 数据是一个对象数组 以下是加载数据的控制器(父控制器):Javascript 将json加载的数据作为单向绑定属性传递给指令angularjs,javascript,json,angularjs,Javascript,Json,Angularjs,这里是我的上下文:我有一个父控制器,它通过服务加载json数据 通过ng repeat,我通过@attribute将数据传递给一个指令,这样每个指令都有自己的数据副本,这样它就可以修改它,而不会影响父范围中初始加载的数据 数据是一个对象数组 以下是加载数据的控制器(父控制器): $scope.allOptions = []; optionService.load(function(data) { angular.forEach(data, function(d) {
$scope.allOptions = [];
optionService.load(function(data) {
angular.forEach(data, function(d) {
this.push(d);
}, $scope.allOptions);
});
optionService.getAll().then(function(data){
angular.forEach(data[0].data, function(d) {
this.push(d);
}, $scope.allOptions);
angular.forEach(data[1].data, function(d) {
this.push(d);
}, $scope.allOptions);
angular.forEach(data[2].data, function(d) {
this.push(d);
}, $scope.allOptions);
});
我调用指令的关联视图是:
<compare-car options="{{allOptions}}"></compare-car>
}))
在与我调用的指令关联的模板中
<div ng-repeat="option in vm.allOptions">
因此,我的问题是传递给options属性的数据是空的,为了解决这个问题,我在指令调用中添加了ng model options=“{debounce:3000}”,以便在调用指令时选项可用。由于断点的延迟,这在第一次调试时起作用
我曾尝试将“=”用于选项属性(仅用于测试,即使我不需要它),但我遇到了同样的问题,它只在第一次工作时起作用
感谢您的帮助
提前谢谢
<div ng-repeat="option in vm.allOptions">