【发布时间】:2015-11-05 16:46:07
【问题描述】:
我在节点应用程序中运行了一段 sn-p 代码
for( i=0; i < Equipment.length; i += 1 ) {
Equipment[i].NumberForSearch = Equipment[i].ClassPrefix + "-" + Equipment[i].UnitNumber;
console.log(Equipment[i].NumberForSearch);
}
console.log(Equipment[0]);
设备是一个对象数组,我正在尝试为该数组中的每个对象添加一个名为“NumberForSearch”的属性。
在我的应用程序中,我们希望显示设备单元编号的方式是“ClasssPrefix”-“UnitNumber”。我想在这里将它们加入一个变量的原因是,在我的 Angular 应用程序中,我希望用户能够在搜索字段中键入 12345-12345,然后过滤掉设备。如果我有 {{ClassPrefix}}-{{UnitNumber}} 出于明显的原因,这不起作用,角度不知道 - 甚至存在。
问题在于,在我的 for 循环中,一切正常。它的日志记录就像它应该做的那样,所以我认为它有效。当我检查前端并将其更改为显示“NumberForSearch”时,什么也没有出现。
然后,我在 for 循环之外添加了日志记录语句,以仅检查我的一个对象以查看该字段是否存在而它不存在。所以我的问题是,为什么这个 sn-p 没有在我的对象中添加“NumberForSearch”字段?
【问题讨论】:
-
这里没有与 JSON 相关的内容。您只是想通过 Angular 将
NumberForSearch属性绑定到您的 UI,对吗?代码在哪里? -
澄清一下:在 JavaScript 中没有 JSON 对象这样的东西;它们是 JavaScript 对象。 JSON 是一种数据交换格式。
-
很抱歉造成沟通不畅,我将设备阵列导入 Angular 没有问题。我目前在我的应用程序中显示设备的所有其他领域。我的问题是“NumberForSearch”字段不存在。因此让我相信我在上面发布的 sn-p 没有添加“NumberForSearch”字段
-
` { _id: 55bf8c7782c85cafe90de0a4, UnitClassification: 'BAC', ClassPrefix: 301, UnitNumber: '326', Year: 1999, Make: 'Komatsu', Description: 'Excavator Sold to A. SONGSTER Coupler已安装桶 U#331。',URL:'HeavyEquipment',活动:true,详细信息:{ 所有者:'BLM',型号:'PC200LC-6',SoldDate:2010 年 11 月 4 日星期四 00:00:00 GMT -0600 (MDT) } }` 这是来自 console.log(Equimpent[0]);
-
@JoshBrown:您可能会尝试在列表已绑定之后添加字段。您拥有的代码 将 修改
Equipment数组,我只是不太了解 Angular(而且您的帖子中没有足够的代码)来说明它是否是绑定到UI,或者发生的事件的时间线是什么。我强烈建议提供一个我们可以运行的minimal reproducible example。
标签: javascript arrays angularjs node.js