gpt4 book ai didi

javascript - Angular 双向数据绑定(bind)不起作用

转载 作者:行者123 更新时间:2023-11-30 17:18:16 25 4
gpt4 key购买 nike

谢谢大家。我现在将选择一个详细的答案并将其关闭。

看下面的代码,很简单

<tr ng-repeat="record in records track by record.id">
<td><input type="checkbox"/></td>
<td ng-repeat="(name, value) in record" ng-hide="name == 'id'">
<portia-td value="{{value}}"></portia-td>
</td>
</tr>

这是指令定义

return {
restrict: 'E',
replace: true,
transclude: true,
scope: {
value: '='
},

controller: function($scope) {
$scope.input = {show: false, value: $scope.value};
},
templateUrl: "td.html"
}

为什么会产生错误?但是当将范围设置改回“@”时,它会再次起作用。

最佳答案

如果你想要双向数据绑定(bind),你需要使用=。像这样:

scope: {
value: '='
}

在 HTML 上:

<portia-td value="value"></portia-td>

当您使用 "{{value}}" 时,您基本上是在插入 value 属性的值并将其传递给指令。这意味着 Angular 将无法获得创建双向绑定(bind)的引用,它只会获得一个值(字符串/数字/等等...)。

更多信息 here .

关于javascript - Angular 双向数据绑定(bind)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25666311/

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