javascript - 主干 Marionette 复合 View 渲染模板

标签 javascript jquery backbone.js marionette

我正在尝试使用 Marionette CompositeView 渲染列表。我不确定为什么渲染的列表只有一个显示单词 result 的项目。我期待第一个项目显示 Level 1

这是我当前代码的一个 fiddle :http://jsfiddle.net/16L1hen4/

这是我的 JS、模板和数据:

JavaScript:

var App = new Backbone.Marionette.Application();

App.addRegions({
    mainRegion: '#main' 
});

var TreeModel = Backbone.Model.extend({    
});

var TreeCollection = Backbone.Collection.extend({
    model: TreeModel,

    url: 'https://api.mongolab.com/api/1/databases/backbone-tree/collections/tree?apiKey=somekey'

});

var TreeView = Backbone.Marionette.CompositeView.extend({

    initialize: function() { 
        console.log(this.collection); 

    },

    tagName: 'ul',

    template: _.template( $('#tree-template').html() )
});

var treeCollection = new TreeCollection();
treeCollection.fetch().done(function () {
    var treeView = new TreeView({collection: treeCollection});
    App.mainRegion.show(treeView);    
});

模板:

<div id="main"></div>

<script type="text/template" id="tree-template">
    <li><%- name %></li>
</script>

JSON 数据:

{
    "_id": {
        "$oid": "54adab80e4b0aa674b256836"
    },
    "name": "Level 1",
    "children": [
        {
            "name": "Child 1 - Level 2",
            "children": [
                {
                    "name": "Jon - Level 3"
                },
                {
                    "name": "Mary - Level 3"
                }
            ]
        },
        {
            "name": "Child 2 - Level 2",
            "children": [
                {
                    "name": "Bill - Level 3"
                }
            ]
        }
    ]
}

最佳答案

仔细阅读 marrionnete 文档 - 您需要定义一个 childView....

关于javascript - 主干 Marionette 复合 View 渲染模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27831965/

相关文章:

javascript - 为什么 jQuery 和 Backbone.js 的 $ 语法有效?

javascript - AngularJS:通过单击外部元素选择单选按钮

data-binding - Backbone : Model-to-template and template-to-model binding

backbone.js - 如何在 Backbone.js v0.5 中构建深度嵌套的模型

javascript - 使用 Grapnel 路由 knockout JS 参数

javascript - 多级列表中的大写首字母(JS、JQUERY)

javascript - 如何通过单击另一个 <div> 中的 href 和按钮使 2 个重叠的 <div> 依次显示?

javascript - 如何阻止 Android 硬件后退按钮在 react-native 的 react-navigation 中运行?

javascript - 通过 MySQL SELECT COUNT(*) GROUP BY 显示条形图

javascript - 在nodejs中使用if条件然后抛出错误是一个好习惯吗?