gpt4 book ai didi

javascript - Breeze knockout 值绑定(bind)输出函数

转载 作者:行者123 更新时间:2023-11-30 12:34:00 26 4
gpt4 key购买 nike

我正在对 odata 端点使用带有 knockout 功能的 Breeze ,它给出了一些奇怪的结果。不过,希望我只是遗漏了一些明显的东西。

这是我的绑定(bind)表达式:

<input type="text" id="name" data-bind="value:organisation().name" />

哪里organisationko.observable<myEntity> myEntity 有一个名为 name 的属性.

文本框的值是一个函数,我认为它是可观察的(尽管从读取输出来看它实际上是一个计算...?:

function f(){if(0<arguments.length){if("function"===typeof O)O.apply(d,arguments);else throw Error("Cannot write a value to a ko.computed unless you specify a 'write' option. If you wish to read the current value, don't pass any parameters.");return this}a.k.Jb(f);n&&k(!0);return q}

如果我将绑定(bind)表达式更改为 value:organisation().name()然后显示正确的值,但是双向绑定(bind)丢失并且不会反射(reflect)更改。

希望我犯了一个常见错误,周围的人可能会指出!

最佳答案

如果您将它绑定(bind)到 organistion().name(),那么 knockout 将在“普通 js 表达式”模式下工作,双向绑定(bind)将不起作用。

我真的不知道 Breeze ,但看起来您的“名称”可观察对象是一个对象的属性,它是您的“组织”可观察对象的值。尝试首先使用“with”绑定(bind)绑定(bind)到外部,然后再绑定(bind)到内部。

像这样:

<!-- ko with:organization -->
<input data-bind="value:name"></input>
<!-- /ko -->

关于javascript - Breeze knockout 值绑定(bind)输出函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26692934/

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