虽然我似乎可以删除一些行,但是否可以根据某些过滤逻辑跳过某些行的呈现?
例如,不要在哪里渲染一行model.get('someProp') == 'X'
虽然我似乎可以删除一些行,但是否可以根据某些过滤逻辑跳过某些行的呈现?
例如,不要在哪里渲染一行model.get('someProp') == 'X'
我猜 css 解决方案,例如display:none;
,可以吗?因此,您可以通过扩展您使用的行模型(骨干本机功能)来使用 classNames:
...
options.row = Backgrid.Row.extend({
className: function() {
return this.model.get('property') == 1 ? 'renderme' : 'hideme';
}
});
var grid = new Backgrid.Grid(options);
然后将您想要的任何样式应用于这些类。当然,您可以通过扩展它来覆盖render
-methodBackgrid.Row
并检查那里的模型属性,但最终也会被覆盖Backgrid.Body
。
我发现使用 css 类名是更灵活的多用途解决方案。