【问题标题】:Access Nested Backbone Collection访问嵌套主干集合
【发布时间】:2013-04-11 14:07:22
【问题描述】:

以下是我使用 (FacetModels) 填充我的收藏的内容

如何访问 AvailableValues[] 数组

“FacetModels”:[ { "FacetDisplayLabel":null, “选定值”:[], “可用值”:[], “未知结果”:0, "ActionURI":null, "FacetGroupName":"类别", "FacetGroupFriendlyId":"SourceCategory", "FacetGroupOrder":10, “允许建议”:假 },

这是我的观点,你会看到我只能访问 FacetModels 数组,我需要能够传递 FacetModels[0].AvailableValues.Name 以便我可以显示每个类别名称

CategoryListItemView = Backbone.View.extend({
    tagName: "li",
    className: "category",
    initialize: function (options) {
        this.template = _.template( $("#categorylist_template").html());
    },
    render: function () {
        var category = this.model
        console.log(category);
        console.log(this.model.toJSON());
        $(this.el).html(this.template(this.model.toJSON()));
        return this;
    }
});

从控制台显示

a.Model {cid: "c2", attributes: Object, collection: r, _sharing: false, _previousAttributes: Object…} _改变:假 _events:对象 _待定:假 _previousAttributes: 对象 属性:对象 动作URI:空 AllowSuggestions:假 可用值:数组 [8] 0:对象 ActionURI: "/api/search?firstname=thomas&firstname_variants=true&lastname=smith&region=all&sourcecategory=armed%20forces%20utf0026%20conflict" 计数:8943 DisplayLabel:“武装部队与冲突” 未知:假 名称:《武装力量与冲突》 原型:对象 1:对象 2:对象 3:对象 4:对象 5:对象 6:对象 7:对象 长度:8 原型:数组[0] 方面显示标签:空 FacetGroupFriendlyId:“SourceCategory” FacetGroupName:“类别” FacetGroup订单:10 选定值:数组 [0] 未知结果:0 原型:对象 改变:对象 cid:“c2” 集合:r 原型:对象

【问题讨论】:

  • 你的视图模型是什么? AvailableValues 是一个集合,还是只是一个带有数组的属性?您的控制台中显示什么?等等……
  • 我已经添加了控制台输出。它在我的模型中作为属性但是数组的一部分。即 FacetModels[0].AvailableValues[]

标签: backbone.js backbone-views


【解决方案1】:

在您的视图中,javascript 数组可通过 this.model.get('AvailableValues') 获得。如果您需要将可用值作为主干集合,则可以覆盖 parse 以使用集合而不是数组填充 AvailableValues 属性。

还有一些其他的 SO 问题有这样的例子:

【讨论】:

  • 我没有意识到它是 this.model.get('AvailableValues') 那么我现在该怎么说 'DisplayLabel' ("AvailableValues":[ { "DisplayLabel":"Census , 土地和调查”,)
  • AvailableValues 此时将是一个 javascript 数组。您可以通过以下方式访问 DisplayLabel 的值:AvailableValues[0]["DisplayLabel"]。我确定您将遍历可用值而不是通过 [0] 访问,但想法是从单个可用值中读取值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-16
  • 1970-01-01
相关资源
最近更新 更多