2016-10-04 8 views
0

Я был в попытке построить компонент дерева таблицы, используя марионетку compositeView.Получить глубину данных о древовидной структуре - Композитный вид - marionettejs

Похож на this.

У меня есть ссылка на Derick's sample, чтобы построить меню деревьев, используя marionettejs.

// The recursive tree view 
var TreeView = Backbone.Marionette.CompositeView.extend({ 
    template: "#node-template", 

    tagName: "ul", 

    initialize: function(){ 
     this.collection = this.model.nodes; 
    } 
}); 

// The tree's root: a simple collection view that renders 
// a recursive tree structure for each item in the collection 
var TreeRoot = Backbone.Marionette.CollectionView.extend({ 
    childView: TreeView 
}); 

Я пытался использовать таблицу вместо списка UnOrder, применить класс CSS для каждого TR на основе глубины дерева.

Но здесь я не могу найти API для получения глубины модели при ее рендеринге. Есть ли способ получить глубину во время рекурсивного вызова?

ответ

0

FYI: CompositeView осуждается для удаления

Однако, чтобы сделать глубину, что я думаю, что вы могли бы сделать что-то вроде этого:

depth: 0, 
childViewOptions: function(){ 
    return { 
    depth: this.getOption('depth') + 1; 
    }; 
} 

В этом примере глубина по умолчанию является 0, но последующие дети будут имеют глубину, пройденную в качестве опции.