gpt4 book ai didi

javascript - 共享范围变量未跨指令更新

转载 作者:太空宇宙 更新时间:2023-11-04 15:43:59 25 4
gpt4 key购买 nike

我在指令方面遇到了一个奇怪的问题,我正在尝试创建 plunkr,但在此之前将其发布到 SO,看看我是否得到任何回复。

我在 Controller 中有以下变量:

$scope.sharedVar = [];
$scope.loopIs = ["var1", "var2", "var3"];

现在我通过 ng-repeat 将此变量传递给指令:

<div class="" ng-repeat="val in loopIs">
<my-directive val="val" sharedVar="sharedVar"></my-directive>
</div>

这是我的指令:

app.directive(myDirective){
return {
restrict: 'E',
scope: {
val: '=val',
sharedVar: '=sharedVar'
},
templateUrl: 'template.html',
link: function(scope){
//...........My logic here
}
}
}

sharedVar 在指令之间共享,因此我希望它在任何指令发生更改时得到更新。

任何人都可以帮助我吗?我在 ng-repeat 内的指令做错了什么吗?

========更新========

我已经添加了plunkr..请看一下。

https://plnkr.co/edit/lhE3UwjJzqNgk2jd8BIV?p=preview

最佳答案

使用$parent作为ng-repeat创建单独的范围本身

 <my-directive val="val" shared-var="$parent.sharedVar"></my-directive>

Working Demo

关于javascript - 共享范围变量未跨指令更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43684488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com