论坛首页 入门技术论坛

在前端开发中应用JS模板引擎 -- 事半功倍!

浏览 25144 次
精华帖 (0) :: 良好帖 (6) :: 新手帖 (7) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-08-20  
给楼主提个建议,模版算是很简单的功能
所以希望楼主在下载包里面直接写个简单的实例,一个复杂全面的实例,加上需要的jquery.js,这样我们一看html就明白要怎么用,也可以一开始就能运行起来。

jtemplate我也在用,性能上倒是没感觉出来,毕竟用的不算太多方面。
0 请登录后投票
   发表时间:2010-08-21  
不知怎么用,强烈要求打包的例子
0 请登录后投票
   发表时间:2010-08-23  
看看我之前写的,配合你这个似乎还行...

2009-04-23 写的
http://vb2005xu.iteye.com/blog/373332

个人感觉没有多大的意义啊,就没有扩展了.我把 模板文件同js分离了 .... ....


/**
* 定义对话框对象
*/
$qui.Class('QUI.Widget.Dialog');
var tpla = $qui.tpl.get('QUI.Widget.Alert');
tpla.assign('string','小妖');
$qui.alert(tpla.display());
0 请登录后投票
   发表时间:2010-08-23  
感谢LZ 的分享 ,,以后再研究 ,这段时间都用EXT开发 ,用不到这个东东,,,
0 请登录后投票
   发表时间:2010-08-24  
非常感谢各位的意见!
好久不来了,一开始也忽视了测试代码这件很重要的事,呵呵,赶紧补上,请到一楼下载

另外,如果各位利用http1.1开发chunked的页面加载机制的话,会发现模板更加有用。

希望各位也积极共享自己工作中开发的觉得有用的代码~
0 请登录后投票
   发表时间:2010-08-26  
这个模板 我觉得可以放在 asp中使用 呵呵 ...
0 请登录后投票
   发表时间:2010-08-28  
楼主,您的这个Sweet template js模板引擎有没有应用到jquery.flexigrid.js插件的例子啊,
我不明白把这个模板引擎应用到插件中的意义!!??
0 请登录后投票
   发表时间:2010-08-28  
回复楼上的朋友
如果是使用别人的控件的话,可能自定义模板的意义不大了
如果是自己开发控件,那我建议采取这样的模式:
1、将控件的html样式写成模板
2、在控件的javascript类中,不要采取代码生成html的方式;将模板作为类属性,show出控件的时候,将控件所需的data apply到模板上即可,性能无需担心,很快的
3、之所以将模板作为类属性,是为了方便替换,如果想改变控件的外观,只需要重写模板就行,数据和控制代码不变

ps:正如楼上有位朋友所说,这是个很小的功能,关键在于灵活应用,呵呵,我在这种模式下工作了不少时间了,感觉效率提高了不止一个档次啊
0 请登录后投票
   发表时间:2010-08-28  
楼主的意思是说:
1、先定义一个变量,这个变量的值是控件的html部分和它的样式,
  如:var tpl = '<li class="<[= (index % 2) ? "nocolor" : "colord"]>">'
                        + '<span class="name"><[=$data.name]></span>'
                        + '<span class="adult">(<[=age > 18 ? "adult" : "under age"]>)</span><br>'
                        + '<span><[$util.print(sex == "male" ? "He" : "She");]> likes: </span>'
                        + '<[foreach (favorite as f) {]>'
                            + '<span style="margin-right: 8px;"><[=f]></span>'
                        + '<[}]>'
                    + '</li>';
2、准备一个控件所需的data
如:var data = [{
                name: "Mark",
                age: 25,
                sex: "male",
                favorite: ["programming", "swim", "reading"]
            }, {
               ...
            }, {
                ...
            }];
3、用第1步中定义的变量实例化一个模板对象,并将第2步中的data apply到模板中

是这个意思吗?
0 请登录后投票
   发表时间:2010-08-28  
楼主说在这种模式下工作了不少时间了,一定是对这个 js 模板引擎很了解了,所以要向楼主学习!!
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics