- 我有一个显示 4 个闪存卡的应用程序,其中 3 个由一个指令填充
- 对于最后一张卡,我希望值取决于控制器
根据视图(和对应的控制器),控制器可以填写第4张卡片的值。
出于演示目的,请参见此处
问题
- 如何从某个控制器更新第四张卡中的值?
- 将值从某个控制器推送到指令是否是个好主意?
- 什么可能是最好的解决方案?
我是 Angular 新手,我很了解它
根据视图(和对应的控制器),控制器可以填写第4张卡片的值。
出于演示目的,请参见此处
问题
- 如何从某个控制器更新第四张卡中的值?
- 将值从某个控制器推送到指令是否是个好主意?
- 什么可能是最好的解决方案?
我是 Angular 新手,我很了解它
对于你的问题,我认为你需要这样的东西:http
://plnkr.co/edit/gp0zIwnj9Oz3IpQPXhDI?p=preview
我在你的指令范围内添加了数据,这个数据是从控制器传递的
scope: {
ngModel: '=',
somedata:'@'
},
的HTML:
<data-ng-pt-header somedata='{{somedata}}'></data-ng-pt-header>
在控制器中:
$scope.somedata='This comes from the controller';
当然在模板中:
<div class="well info-card days-left">
<legend>Spent</legend>
<span>{{somedata}}</span>
</div>
这是将数据传递给指令的众多方法之一,最简单,如果您想了解有关指令的更多信息,还有这篇出色的帖子:http ://amitgharat.wordpress.com/2013/06/08/the-hitchhikers - 指导指令/
对于另外两个问题,是的,将数据从控制器发送到指令可能是个好主意,这在很大程度上取决于您想要的数据和逻辑,但您的应用程序似乎需要它。
最好的解决方案不存在(至少不是只看到一个简单的例子),但由于它似乎是一种简单的数据交换,最简单的方法似乎符合您的要求;)
玩得开心
指令中的控制器控制指令的范围。如果要从其他控制器传递数据,则必须通过指令中的控制器从其他控制器传递。
stackoverflow 中有几个线程与如何在控制器之间传递数据有关。
希望这可以帮助。