主干——插入JavaScript以操纵DOM的最佳位置是什么?
Backbone - What is the best location to insert JavaScript to manipulate the DOM
我希望JavaScript与我的骨干模板紧密集成,并且作为视图参考使用哪个模板,我相信这将是存储JavaScript的最佳位置,对吗?但如何?
特别地,我有一个JavaScript,它在视图呈现并准备好(不是事件)时设置DOM。我最初在模板中设置了这个脚本,但它只在应用程序第一次加载时被触发,当你通过Backbone的路由器导航回视图时,JavaScript没有被触发。
模板不是用来存储JavaScript的——它们应该是由视图呈现的愚蠢的html模板。
当你从视图中加载一个模板时,这个视图需要绑定所有将与你的应用交互的DOM元素。
如果你的视图只有绑定到DOM,这是一个很好的做法,所以它可以触发内部事件。
然后你可以创建"控制器",它将监听你的视图实例并与之交互,触发方法在DOM中做一些更改,或者准备视图使用的集合和模型。
但是,您可以使用许多其他库来组织代码逻辑加载。
我喜欢requirejs,但是commonjs有很多有用的选项。
将JavaScript放入模板中就像将它与HTML混合在一起。这不是一个好主意,因为你将逻辑和结构混合在一起,一旦应用程序增长,它将很难维护。
我用MVC风格组织我的代码,这使得它很容易增长和测试大型应用程序。例如,如果我想要模型/集合,它们在MODEL/COLLECTION文件夹中,CONTROLLER文件夹保存应用程序的逻辑部分,VIEW文件夹保存与DOM交互的文件,像Django一样,我为模板添加了一个Template文件夹,这是尽可能简单的。
解释一下你的问题:
当您用脚本加载模板时,您将执行该脚本。在此之后,您的模板将存储在内存中,这意味着您的脚本将永远不会再次被触发。你可以解决它,但你会做错。通过在Backbone中绑定视图渲染方法,可以在渲染后触发脚本。
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 其中是在ReactJS中放置一个值的最佳位置,该值由传入的初始参数计算一次,然后再也不会更改
- 应用 API 响应转换的最佳位置
- Javascript:注册事件处理程序的最佳位置
- 将角度文件存储在轨道中的最佳位置
- 存储angularJs中解析方法的最佳位置
- 在Zend Framework中,哪里是放置自定义jquery和javascript的最佳位置
- 在HTML文档中插入JavaScript的最佳位置
- 什么是存储和组织NOSQL数据库图像的最佳位置
- 事件回调的最佳位置在哪里?(匿名或命名)
- 将javascript行为附加到DOM的最佳位置
- 在Angular/Django SPA中存放ng模板的最佳位置是什么?
- 什么是放置<脚本的最佳位置?标记在JSP文件中
- 在文档中放置JavaScript/Ajax的最佳位置是什么?
- 在动态AJAX加载时,哪里是存储支持JSON的最佳位置
- 在ROR中放置JavaScript的最佳位置
- 哪里是过滤AJAX查询数据的最佳位置
- 哪里是在客户端上放置数据库ID的最佳位置
- 主干——插入JavaScript以操纵DOM的最佳位置是什么?
- 调用ajax的最佳位置是调用API