これには複数の質問があることを知っており、それらの回答を通じて最初の問題を解決しました。グローバル名前空間を汚染せず、このタイプのソリューションを使用することにしました。しかし今、同じフレームワークに関連する別の問題があります。私のモデルはこのように始まります。
define([
'backbone',
'backbone.relational'
], function(Backbone){
var MenuNode = function () {
Backbone.RelationalModel.apply(this,arguments);
}
var NodeCollection = function() {
Backbone.Collection.apply(this,arguments);
}
MenuNode = Backbone.RelationalModel.extend({
constructor: MenuNode,
relations:[
{
type: Backbone.HasMany,
key: "children",
relatedModel: MenuNode,
collectionType: NodeCollection,
reverseRelation: {
key: "parent"
}
}
]
})
NodeCollection = Backbone.Collection.extend({
constructor: NodeCollection,
model: MenuNode,
url: function() {
return "/nodes"
}
})
これにより、jstree であるアプリケーションに必要なモデルが作成されます。しかし、私の質問は、API との関係を作成する方法と、バックボーンを使用してノードの現在の子を取得する方法です。私はAPIを持っています:
nodes/ returns the root nodes in a simplified version
nodes/id returns the full info about node, with children and parent simplified
nodes/id/children returns the simplified version of the children of a specific node
しかし、バックボーンを介して特定のノードの現在の子を取得するにはどうすればよいでしょうか? 子をロードしたいときに電話をかけることができるようにしたいのですが、子を事前にロードしたくありません。リクエスト用にサーバーを保存しようとしています。ツリービューが大きいため、ツリー全体をロードする必要がないことを意味します。
さらに明確にするために質問をしてください。先にThx