我正在使用指令来呈现树状数据。 由于数据可以过滤。 当我清除过滤器时;我希望我的指令能够响应数据中的新变化并自行更新,但它并没有。 只有当我更改视图/路由时,指令才会更新。
我尝试在清除过滤器事件时执行此代码
$scope.$on('clearingStockFilter', function() {
$timeout(function() {
$compile($element.contents())($scope);
},300);
});
但我最终制作克隆指令,所以我开始在视图中看到数据两次
答案 0 :(得分:0)
您应该将元素替换为已编译的元素;
var newEl = $compile($element.contents())($scope);
$element.replaceWith(newEl);
不过,这可能不是达到你想要做的最好的方法。