Javascript 从敲除中的ObservalArray返回数据的函数
情况就是这样 我有一个这种格式的查询Javascript 从敲除中的ObservalArray返回数据的函数,javascript,knockout.js,knockout-2.0,knockout-mapping-plugin,Javascript,Knockout.js,Knockout 2.0,Knockout Mapping Plugin,情况就是这样 我有一个这种格式的查询 { query:'A query string', user: 'email@user.com.ar', } 在我的视图模型中,我有一个用户列表和一个函数 var self=this; self.queries=ko.observableArray( [ { query:'A query string', user: 'email@user.com.ar', } ]); self.users=
{
query:'A query string',
user: 'email@user.com.ar',
}
在我的视图模型中,我有一个用户列表和一个函数
var self=this;
self.queries=ko.observableArray(
[
{
query:'A query string',
user: 'email@user.com.ar',
}
]);
self.users=ko.observableArray(
[
{user:'email@user.com.ar',data_of_user:{name:'User Name'}}
])
self.getUserInfo=function(email)
{
var data_user=_.findWhere(self.users(),{email:email});
return data_user.data_of_user.name;
}
但是没有起作用
我如何才能做到这一点,但与其他方法
我需要创建一个跨度,可以通过电子邮件的用户和获得的名称
<div data-bind="foreach:queries">
<span data-bind="text:$root.getUserInfo.bind($data,$data.email)">
<div/>
我发现了一些错误 视图:
<div data-bind="foreach:queries">
<div data-bind="with: ($root.getUserInfo($data))">
<!-- user context -->
<span data-bind="text: email"></span>
<span data-bind="text: data_of_user.name"></span>
</div>
<div/>
这是span text:function(){[native code]}的结果。是否需要输入来编辑用户电子邮件?请共享更多视图和视图模型。不,我想显示一个包含用户名的span,用户名在用户['name'的数据中,但查询中只有用户的电子邮件,所有数据都在self.users中。这很好!感谢您的时间和经验
var VM = function () {
var self = this;
self.queries = ko.observableArray(
[{
query: 'A query string',
email: 'email@user.com.ar',
}]);
self.users = ko.observableArray(
[{
email: 'email@user.com.ar',
data_of_user: {
name: 'User Name'
}
}])
self.getUserInfo = function (user) {
var user = _.findWhere(self.users(), {
'email': user.email
});
return user;
}
;
};
ko.applyBindings(new VM());