Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
避免Backbone.js中的嵌套模型_Backbone.js - Fatal编程技术网

避免Backbone.js中的嵌套模型

避免Backbone.js中的嵌套模型,backbone.js,Backbone.js,如果我的数据最好建模为n元树,其中每个节点最多可以有n个子节点。在Backbone.js中,我试图定义一个名为Node的模型,该模型包含一组节点 Node = Backbone.Model.extend({ defaults: { children: undefined }, initialize: function() { this.set({ children: new NodeList()

如果我的数据最好建模为n元树,其中每个节点最多可以有n个子节点。在Backbone.js中,我试图定义一个名为Node的模型,该模型包含一组节点

Node = Backbone.Model.extend({
    defaults: {
        children: undefined
    },

    initialize: function() {
        this.set({
                children: new NodeList()
            });
    }
});

NodeList = Backbone.Collection.extend({
        model: Node
});
这(至少)有两个问题:

  • 我已经读到Backbone.js模型不应该包含任何 属性不是有效的JSON类型,并且Backbone.js不是有效的JSON类型
  • 如果我想要一个子节点 为了维护对其父节点的引用,我以循环 调用toJSON时导致Backbone.js崩溃的关系
  • 我应该如何解决这个问题


    非常感谢。

    我建议你看看。
    我使用过它,我也遇到过同样的循环JSON转换问题。我把它提交给了作者,他们在最新版本中修复了它。希望这有帮助

    你可能想看看,我会看看的,谢谢。但我担心我在做一些我不该做的事。如果不更换库,我面临的问题是否能得到更好的解决?我应该改变我的方法吗?我认为你的方法很好。除了主干关系外,还可以查看。