我有一个像这样的指令设置
return {
restrict: 'E',
scope: {
savingModel: '='
},
templateUrl: '/templates/savingindicator'
};
我这样使用它:
<saving-indicator saving-model="myModel"></saving-indicator>
我想在遗留代码上使用它,遗留代码在当前作用域/控制器上具有myModel
的所有属性。如何将其传递给此指令?执行以下操作似乎不起作用,因为savingModel
为空
<saving-indicator></saving-indicator>
答案 0 :(得分:1)
一个简单的解决方案,假设您的问题是该指令需要$scope.savingModel = {saved: false, saving: true}
而不是$scope.saving = true; // ...
,那么只需附加一个自引用,然后传递:
$scope.savingModel = $scope;
但是,如果在Object上运行任何深度/递归复制函数,则可能会出现问题。
最好的解决方案是重构代码并创建单独的模型对象,上面只是一个快速入侵,让事情变得紧张。