我需要在同一个指令的两个实例之间共享一个属性。 这是一个帮助我解释我的意思的傻瓜。
http://plnkr.co/edit/wsrSxq?p=preview
两个方框的左侧位置应通过scope.left
值链接在一起
但是,如果我注意到变化,它将无法工作,因为我怀疑该指令会在循环中影响自身。
有什么建议吗?感谢
答案 0 :(得分:2)
唯一缺少的是调用scope.$apply
以便手表被触发。由于更改范围值的事件处理程序是从应用程序的“外部”执行的,因此需要$apply
来通知Angular更改。取消注释两个注释行并更改:
scope.left = newX;
到
scope.$apply(function(){
scope.left = newX;
});