angularjs指令在链接方法中隔离范围

时间:2014-02-06 10:38:04

标签: angularjs-directive angularjs-scope angularjs-service

我的jsbin在这里:http://jsbin.com/yapi/1/edit

我正在测试指令的link方法中的隔离范围(它在模板中使用时起作用)。

我的目标是使用不同指令中的链接方法来共享和更改相同的数据(通过引用,而不是按值)。因此,如果一个指令中的链接方法更改了数据,那么它将在其他指令中的link方法中反映出来。

但是,它似乎无法正常工作,因为您可以在jsbin链接中看到。例如如果你改变Dir 1它不会改变Dir 2,反之亦然。

1 个答案:

答案 0 :(得分:0)

我会使用Angular的pub / sub模式

Here is an article the talks about best practices

我会有一堆与自己的范围数据交互的指令, 当数据在指令中发生变化时,它可以广播('消息',数据)对该数据的更改 其他指令可以监听$ on('message',function(data){})

如果您希望一切都依赖于相同的数据,那么只需使用所有指令与之交互的服务(单例)