我遇到一个奇怪的问题,因为我的指令似乎是在陈旧的row.entities上执行,这意味着当你向下滚动或修改网格的排序时它不会获得新的值。最初的~20行渲染得很好但过去指令与行解除了关联。
请参阅我非常讨厌的示例here。
答案 0 :(得分:3)
在传递给指令更改的表达式的排序值期间看起来像,但表达式本身保持不变。
您应该将范围&
表达式绑定更改为=
值绑定(并使用scope.installs
访问该值,而无需函数调用),然后您就可以跟踪更改。 / p>
// ...
scope: {
installs: '='
},
// ...
然后,要跟踪更改,您可以使用scope.$watch
并将代码放入其中。
link: function (scope, element, attrs) {
scope.$watch('installs', function(newValue) {
// your code, you can use newValue as current installs value
var installs = newValue;
// ...
});
}
示例here。