gpt4 book ai didi

knockout.js - 没有模板的对数组元素的 knockout 绑定(bind)只能单向工作

转载 作者:行者123 更新时间:2023-12-04 06:17:31 25 4
gpt4 key购买 nike

有人可以帮我更好地理解绑定(bind)到可观察数组元素而不使用模板吗?

我有一个表,其中包含的不仅仅是我试图从数组中呈现的数据。我的数组是固定大小的,所以为了避免布局的挑战,我想将输入框直接绑定(bind)到数组元素。我可以让它单向绑定(bind)到 View ,但无法识别更新。这是我的示例:jsfiddle

我没有成功地尝试让每个元素都可观察,但我得到了相同的结果。

最佳答案

访问数组项的语法导致 Knockout 在单向绑定(bind)更改时不创建回调来更新它的值(它认为它是一个表达式并且不可写)。例如,如果您这样做,它将正常工作:

viewModel.test = viewModel.recipients()[0];

然后做了:
<input data-bind="value: test.emailAddress"/>

因此,您的场景说明这是 Knockout 中的一个问题。这在模板绑定(bind)中也可以正常工作,或者如果您不想使用模板绑定(bind),那么制作 emailAddress 也可以正常工作。一个可观察的。

它看起来像: http://jsfiddle.net/rniemeyer/3JmbA/2/

因此,您可以在构造函数中将 emailAddress 设为可观察值,并且您的警报需要将可观察值作为函数访问。

关于knockout.js - 没有模板的对数组元素的 knockout 绑定(bind)只能单向工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7046125/

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