knockout.js 无法使用knockoutJS进行数据绑定

t40tm48m  于 2022-11-10  发布在  其他
关注(0)|答案(2)|浏览(183)

我目前正在使用DurandalJS、BreezeJS和KnockoutJS开发应用程序。
一切都很顺利,但最简单的事情(我相信),我不能让它工作。
在我的Viewmodel中,我有一个currentCustomer,它是一个ko. observable。通过Breeze,我得到了customer!currentCustomer(data.results[0].Customer());。这一切都工作正常。如果我用Google Chrome查看,我会看到对象中填充了currentCustomer。
我想要的是以下内容:我有一个inputfield,我试图用一个值数据绑定把currentCustomer的Name绑定到这个输入上,但是我不能让它工作。工作的是:

<input data-bind="value: currentCustomer()" />

但是在输入字段中,它只显示[Object object],所以currentCustomer中肯定有内容(它是)。
这就是我尝试过但没有成功的方法:

<input data-bind="value: currentCustomer().Name()" />
<input data-bind="value: currentCustomer().Name" />
<input data-bind="value: currentCustomer.Name()" />
<input data-bind="value: currentCustomer.Name" />
<input data-bind="value: currentCustomer()._latestValue().Name()" />
<input data-bind="value: currentCustomer()._latestValue.Name()" />

这是一个屏幕截图,您可以看到视图中的值!
http://s22.postimg.org/62m21nnsx/problem_data_bind.png

vvppvyoh

vvppvyoh1#

你试过用“with”吗?

<div data-bind='with:currentCustomer'>
<input data-bind="value: Name/Name()" />
</div>
ltskdhd1

ltskdhd12#

将其更改为currentCustomer().name,如果Name是currentCustomer实体上的属性,则该方法应该有效。

相关问题