gpt4 book ai didi

javascript - 获取 'foreach' 绑定(bind)上下文中的当前 'with' 项

转载 作者:行者123 更新时间:2023-11-28 18:57:19 24 4
gpt4 key购买 nike

假设我们有以下布局:

<tbody data-bind="foreach: items">
<tr>
<td data-bind="with: $parent.inplaceEditorVm">
<span data-bind="text: $parent.$data.OwnrPrefs"></span>
</td>
</tr>
</tbody>

我们如何在 with 绑定(bind)的上下文中访问当前 foreach 项的属性?

即在上面的示例中,我们需要在 span 元素的 data-bind 表达式中编写什么来获取 OwnrPrefs 的值当前的 foreach 项?

当我像上面的示例一样使用 $parent.$data.OwnrPrefs 时,它会抛出:

TypeError: Unable to get property 'OwnrPrefs' of undefined or null reference

当我尝试使用 $data.OwnrPrefs 时,该表达式的值被解析为 undefined,因为 $data > with 绑定(bind)的范围内是 inplaceEditorVm 对象,而不是当前的 foreach 项。

最佳答案

withforeach 等绑定(bind)创建新的 binding contexts 。外部/原始上下文,即 with 之外的上下文,可用作 $parent - 这是 $parent 所指的内容,它不是(直接)与您的 View 模型结构相关,而是与页面上的绑定(bind)相关。

根据您的情况,您可以这样做:

<tbody data-bind="foreach: items">
<tr>
<td data-bind="with: $parent.inplaceEditorVm">
<span data-bind="text: $parent.OwnrPrefs"></span>
</td>
</tr>
</tbody>

关于javascript - 获取 'foreach' 绑定(bind)上下文中的当前 'with' 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33350385/

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