将elenium.js视图附加到现有元素上,而不是将el插入DOM中
我正在实现我的第一个实际的非教程式Backbone应用程序,并且对使用bbone.js方面的使用存在两个疑问,这对我来说不太好,这涉及将视图的渲染el注入DOM与使用的现有元素el。我怀疑我会在这里为大家提供一些“可教的时刻”,并感谢您的帮助。 我在网络上看到的大多数Backbone View示例在创建View时都会指定tagName,id和/或className,从而创建一个与DOM无关的el。它们通常看起来像: App.MyView = Backbone.View.extend({ tagName: 'li', initialize: function () { ... }, render: function () { $(this.el).html(<render an html template>); return this; } }); 但是这些教程并不总是能解释他们如何建议将渲染的el引入DOM。我以几种不同的方式看到了它。因此,我的第一个问题是:调用视图的render方法并将其el插入DOM的适当位置在哪里?(不一定是同一地点)。我已经看到它是在路由器中,视图的初始化或渲染函数中或仅在根级文档就绪函数中完成的。($(function ())。我可以想象其中的任何一项工作,但是有正确的方法吗? 其次,我从一些HTML标记/线框开始,然后将html部分转换为与主干视图相对应的js模板。我觉得与其让视图呈现一个未附加的元素并在html中提供锚点以将其插入,还不如让它看起来更自然,当一个视图只包含一个元素并且不会消失时,使用现有的空包装器元素(通常是adiv或span)el本身。这样,我不必担心在文档中找到插入我未附加的el的位置,这可能最终看起来像这样(请注意额外的层次): <div id="insert_the_el_in_here"> <!-- this is all that's in the original HTML doc --> <div id="the_el"> <!-- i used to be a …