【发布时间】:2014-12-28 20:26:11
【问题描述】:
我正在对一个 odata 端点使用带有敲除的轻风,它给出了一些奇怪的结果。不过,希望我只是遗漏了一些明显的东西。
这是我的绑定表达式:
<input type="text" id="name" data-bind="value:organisation().name" />
其中organisation 是ko.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}
如果我将绑定表达式更改为value:organisation().name(),则会显示正确的值,但双向绑定会丢失并且不会反映更改。
希望我犯了一个常见的错误,周围的人可能会指出!
【问题讨论】:
-
你能在这里发布你的“组织”模型代码吗?
-
并非如此。我有一个接口,但这只是打字稿的东西,在运行时并不重要。据我了解,模型本身是由 Breeze 创建的
-
需要复制。您应该能够创建一个迷你版本,一个模型的一个实体版本......例如组织实体......产生这种行为。元数据是关键。作为 jsfiddle 或 plunker 会很棒。
标签: javascript knockout.js typescript breeze