Closed fyunos closed 9 years ago
SPA框架不包含模板引擎功能,你可以选择自己熟悉的模板引擎引入到项目中,只要在定义视图的view方法中获取数据并通过模板引擎拼装html就可以,然后将拼装好的html触发给spa:initpage事件,这是我们在实践中常用的方案。
如下是一个代码案例:
var pageHottopic = {
route: 'hottopic',
classname: 'hottopic',
animate: 'pushInLeft',
title: '热门话题推荐',
view: function(pageData) {
var $page = this,
context = {
app: app
},
body = txTpl(tmpl, context) // txTpl是我们使用的模板引擎,你可以选择其他自己熟悉的
// 下面的这行代码是关键,是将拼装好的html触发给spa:initpage事件
// 也可以通过ajax获取异步数据后拼装模板,然后在ajax成功的回调再执行下面的代码
$doc.trigger('spa:initpage', [$page, {body: body, context: context}])
},
init: function(pageData) {
// 视图渲染后执行一些初始化工作
}
}
我目前在基于spa演示在做项目测试,发现没有模板引擎实在是不太方便,spa的架构我还不太了解,能否指点一下如何挂载一个模板引擎或者帮忙挂载一个呢?