在Backbone.js中使用视图时,我通常会有以下部分:
ul
元素。el
元素,在本例中为li
元素。如果我渲染视图Backbone.js创建li
元素然后我通常将这个渲染的东西附加到目标元素,例如使用jQuery。
到目前为止,非常好。
我不知道的是Backbone.js以编程方式创建li
的原因。为什么它不只是采用模板的内容并将其用于渲染?
对我而言,这似乎令人困惑,因为:
ul
标记。li
标记。 Insted li
由Backbone.js以编程方式创建并填充了模板。
为什么会这样?
如果模板已经包含li
,那么恕我直言会更直截了当。我错过了什么?
答案 0 :(得分:1)
我的理解是Backbone需要一个元素来附加模板和操作。如果Backbone要立即附加到页面上的DOM元素,每次更新元素(添加项目)时,该过程会慢得多。有许多在线教程解释了如何在将输出附加到DOM之前首先生成输出。例如,如果我有一个< ul>标签,我想追加200< li>如果我只是追加每个< li>元素,你会注意到一个显着的延迟。与在内存中构建html并在之后附加它。