使用主干js加载模板

Goo*_*ead 11 javascript ajax requirejs backbone.js underscore.js

我开始在javascript开发中,做了一个简单的项目,使用node.js作为rest API和使用主干的客户端,一切看起来都很完美,直到我想从我的js中获取我的模板.

我找到了不同的方法,其中一些有一些时间(比如一岁),但我无法理解哪一种可能更好:

下划线中的外部模板

  • 使用require.js加载文本插件.

    专业 - >根据需要加载不同的模板.

    cons - >我不喜欢将所有内容放入"加载器"功能的方法......

    define(["TemplateEngine", "text!templates/template.html"], function(...
    
    Run Code Online (Sandbox Code Playgroud)

RequireJS:加载模块,包括模板和CSS

  • 使用AJAX请求加载模板的函数.

    专业 - >您可以加载所需的模板并添加本地存储空间.

    cons - >似乎我必须将所有模板合并到一个生成环境的文件中.

    function() {
    
    var templateLoader = {... $.get calls ...}   
    
    Run Code Online (Sandbox Code Playgroud)

异步加载下划线模板的最佳方法

  • 还有一个用于模板加载的Jquery插件,我非常喜欢,但似乎它没有发布?

http://api.jquery.com/jQuery.template/

似乎需要是最好的方法,但也许我错过了一些东西,我不想让事情尽可能干净,因为我在学习/玩乐阶段:D

任何有良好结构或任何亮点的好文章或github项目都将受到赞赏.

谢谢.

请原谅任何重大的拼写错误,而不是英语发言者:)

--EDIT--发现了一些有趣的视频,了解如何使用require.js启动和包装内容 http://www.youtube.com/watch?v=VGlDR1QiV3A

http://www.youtube.com/watch?v=M-wjQjsryMY

小智 2

我建议使用 require.js 和文本插件。将 html 模板混合为 javascript 变量中的字符串是个坏主意,以及使用<script type="text/template"></script>.

这是关于backbone.js 的一个非常好的系列,其中还涵盖了模板加载和项目构建: http: //dailyjs.com/2012/11/29/backbone-tutorial-1/。那里还提供了 Github 项目。

  • 您可以使用 Backbone,它基本上是一个非常好的实用程序,用于向代码添加结构并在不同类型的对象之间分离不同的任务(数据处理/视图渲染)。将客户端模板保存为单独的文件也是添加结构的好方法(就像将 .js 文件保存在 /js 文件夹中,将样式表保存在 /css 文件夹中等)。保持服务器端模板(或静态 html 页面)干净且易于维护。试想一下,如果您在一个页面上需要 10 个不同的模板 - 将它们全部添加到脚本标记内的 html head 中将导致您的代码一片混乱。 (2认同)