• 如何选择Javascript模板引擎(javascript template engine)?


    日期:2012-9-17  来源:GBin1.com

    如何选择Javascript模板引擎(javascript template engine)?

    随着前端开发的密集度越来越高,Ajax和JSON的使用越来越频繁,大家肯定免不了在前台开发中大量的使用标签,常见到的例子如下:

    你的到了一个JSON对象,如下:

    var data={
      email: 'terry.li@gbin1.com,
      gender: 'male'  
    }

    然后你需要将json数据组织成页面内容,如下:

    var email, gender;
    email= '<div class="mail">' + data.email+ </div>'; 
    gender= '<div class="gender">' + data.gender + </div>'; 
    $('#contentwrapper‘).append(content).append(gender);

    代码执行功能非常简单,将json数据生成web页面中的内容,如下:

    <div class="mail">terry.li@gbin1.com</div>
    <div class="gender">Male</div>

    如果只是简单代码组合可能还好一些,但是如果页面大量使用类似的结构的话,除非一直是同一个程序员维护,否则后期的管理成本会相对非常的高。

    为 了解决这个问题, 我们通常会引入"javascript模板引擎概念“,提到模板,相信大家都不会陌生,如果你开发过服务器端程序,例如J2EE相关技术的话,肯定对于 Freemarker,sitemesh等模板类库非常熟悉,它能够有效的帮助你组织和维护代码结构,提高代码编写效率和降低维护成本。

    目前开源的javascript模板引擎很多,抛给我们的问题是 - 如何选择一个js模板引擎?

    为了更好的帮助大家辅助选择模板引擎,这里推荐一个不错的工具性网站:Template-engine-chooser

    打开这个网站后,我们可以看到列出了比较常用的js模板引擎,例如,mustache.js,jQuery之父John 的micorotemplate.js,还有jQuery Tmpl的替代品 - jsrender等等。

    在类库列表的左边是一系列的问题,如下:

    • 模板需要在客户端使用还是服务器端?
    • 逻辑复杂程度有多少?
    • 是不是有运行速度要求?
    • 是不是需要预定义的模板?
    • 需要Partials支持吗?
    • 需要DOM结构或者String字符串类型?
    • 除了模板标签,是不是在渲染前后开发语言一致?

    如果你也在寻找js模板的话,你肯定也有一些问题,或者就是上面列出的问题里。你只需要针对不同的问题回答:是或者不是,这个工具会自动选择合适的模板。

    当然,这里的模板并不是很全,但是包含了比较知名的模板,希望以后它能够添加更多模板选择项。

    希望大家喜欢这个工具!如果你有任何问题,请给我们留言!

    来源:如何选择Javascript模板引擎(javascript template engine)?

    欢迎访问GBin1.com
  • 相关阅读:
    分布式缓存技术redis学习系列(一)——redis简介以及linux上的安装
    redis整合spring(redisTemplate工具类)
    架构之路之spring+redis的集成
    java之redis篇(spring-data-redis整合)
    Redis 安装
    java对redis的基本操作
    mybatis 详解(九)------ 一级缓存、二级缓存
    mybatis 详解(八)------ 懒加载
    mybatis 详解(七)------一对一、一对多、多对多
    mybatis 详解(六)------通过mapper接口加载映射文件
  • 原文地址:https://www.cnblogs.com/gbin1/p/2688889.html
Copyright © 2020-2023  润新知