【问题标题】:ExtJS : count number of values for json keyExtJS:计算 json 键值的数量
【发布时间】:2013-11-20 08:32:09
【问题描述】:

我正在开发一个用 coffescript 编写的 ExtJS MVC 风格的应用程序,我想只返回分配给“key2”的值的数量。

在这个例子中,我想找回数字 2。

但是,在下面的示例中,我得到的是“11”。任何见解将不胜感激。

// JSON
"data" : [{
     "key1" : "value",
     "key2" : ["valu1", "valu2"]
]}

//Model
Ext.define("Test.model.Values",
    extend: "Ext.data.Model"

   fields: [
       name: "key1"
       type: "string"
   ,
       name: "values"
       type: "string"
       convert: (value, record) ->
         return record.get("key2").length
   ]

)

【问题讨论】:

  • 代码中的某处(虽然不是上面的代码) 1 被添加 1 作为字符串

标签: json extjs coffeescript


【解决方案1】:

设置

type: "string"

在包含数组的字段上,例如:

["valu1", "valu2"] 

将值强制为字符串:

"valu1,valu2"

在这种情况下恰好是 11 个字符。

首先,您需要为“key2”定义一个字段,以便从您的数据中读取它,然后确保不要显式设置类型。

fields: [{
   name: "key1",
   type: "string",
},{
   name: "key2"
},{
   name: "values",
   convert: function(value, record){
     return record.get("key2").length
   }
}]

【讨论】:

    猜你喜欢
    • 2022-12-03
    • 2011-09-11
    • 1970-01-01
    • 1970-01-01
    • 2022-10-05
    • 1970-01-01
    • 2013-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多