【问题标题】:Knockoutjs: How can I add an extra field to each item in an observable arrayKnockoutjs:如何为可观察数组中的每个项目添加一个额外的字段
【发布时间】:2018-06-01 06:56:12
【问题描述】:

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

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

我想为每个项目添加一个名为“时间”的额外字段。我如何在 Knockout 中实现这一点?

【问题讨论】:

  • 你的问题不是很清楚。如果您想知道如何修改后端以发送额外的字段,我们需要更多地了解您使用的后端类型以及它当前如何发送数据。
  • @JasonSpake 如何向 Knockout a observableArray 中的数组项添加额外的字段或属性?这就是我所要求的?

标签: knockout.js


【解决方案1】:

由于observableArray 实际上是包装常规数组的observable,因此您可以从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"));

【讨论】:

  • 谢谢,这是一个很好的答案
猜你喜欢
  • 2012-02-17
  • 2015-07-14
  • 1970-01-01
  • 2015-09-01
  • 2012-04-20
  • 2013-12-16
  • 2016-05-14
  • 1970-01-01
  • 2021-11-23
相关资源
最近更新 更多