首页 > 解决方案 > Knockoutjs:如何为可观察数组中的每个项目添加一个额外的字段

问题描述

我的 Ko.observableArray 中有这样的项目。

dateCreated: 1527677106000, id :1 ,message : "Hello", messageStatus : "UNREAD", receiver : "James", sender :"Bassey"} 

我想为每个项目添加一个名为“时间”的额外字段。我怎样才能在淘汰赛中实现这一目标?

标签: knockout.js

解决方案


由于observableArray实际上是可观察的,可以包装常规数组,因此您可以从observableArray获取底层数组并使用它来执行您可以在 JS 中使用Array执行的所有操作:

var array = ko.observableArray([
    { name: "John", age: 28 },
    { name: "Harry", age: 21 }
]);

// get value from observableArray
var arrayValue = array();

// add properties to array's items
arrayValue.forEach(item => (item.gender = "male"));

推荐阅读