无法使用 Knockout 从数组中设置正确的文本
Trouble setting correct text from an array, using Knockout
我正在遍历一个数组:
<tbody data-bind="foreach: devices">
我的一个专栏包含 clientId
<td data-bind="text: clientId"></td>
但我想输出 lastName 而不是那个 clientId,它位于另一个 observableArray 的客户端对象中:
let Client = function(clientId, lastName){
this.clientId = ko.observable(clientId);
this.lastName = ko.observable(lastName);
}
self.client = ko.observableArray();
所以不知何故,在我的 table 列中,我需要搜索客户端数组,找到当前的 clientId(我们处于循环中),然后打印出 TD 中的 lastName 而不是 clientId。
谁能帮帮我?
谢谢。
用$root
你可以获得数据模型的根实例,所以你可以在client() observableArray中找到客户端。
假设你在 root 中有一个 findClient(id)
函数,你应该:
<td data-bind="text: $root.findClient(clientId())"></td>
我正在遍历一个数组:
<tbody data-bind="foreach: devices">
我的一个专栏包含 clientId
<td data-bind="text: clientId"></td>
但我想输出 lastName 而不是那个 clientId,它位于另一个 observableArray 的客户端对象中:
let Client = function(clientId, lastName){
this.clientId = ko.observable(clientId);
this.lastName = ko.observable(lastName);
}
self.client = ko.observableArray();
所以不知何故,在我的 table 列中,我需要搜索客户端数组,找到当前的 clientId(我们处于循环中),然后打印出 TD 中的 lastName 而不是 clientId。
谁能帮帮我?
谢谢。
用$root
你可以获得数据模型的根实例,所以你可以在client() observableArray中找到客户端。
假设你在 root 中有一个 findClient(id)
函数,你应该:
<td data-bind="text: $root.findClient(clientId())"></td>