源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Nodejs高扩展性的模板引擎 functmpl简介

  • 时间:2020-02-12 08:08 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Nodejs高扩展性的模板引擎 functmpl简介
[b]关于functmpl[/b] functmpl 是一个基于JavaScript/Nodejs的高扩展性的模板引擎 [b]模板格式[/b] [code]<#包含/>[/code] 如果想在一个模板中插入另一个模板,可以使用<#包含/> 比如插入模板 a.ftl : [code]<#"a.ftl"/>[/code] [code]<@功能/>[/code] 除了输出变量、包含模板外,也可以加入更多自定义的功能,比如:枚举、赋值 但额外的功能需要自定义。 自定功能的具体格式为 <@功能名称 参数名=参数值/> <@功能名称 参数名=参数值>     子节点 </> 其中,参数名/参数值可以没有或者含有多对。 参数值可以是变量名,或者是JSON 子节点内容可以是普通内容、<=输出/>、<#包含/>或者<@功能/> [code]<`表达式`>[/code] 如果只是执行表达式,可以使用<`表达式`> [code]<`=输出`>[/code] 如果想输出一个变量的值,可以使用<=输出/> 比如输出变量 val 的值 [code]<`=val`> [/code] [b]如何使用[/b] [b]获得functmpl[/b] 使用npm 或者 git
npm install functmpl
git clone git@github.com:wangchenxunum/functmpl.git
git clone git@git.oschina.net:wangchenxunum/functmpl.git
引入到Nodejs [code]let functmpl = require('functmpl');[/code] 引入到浏览器 [code]<script src="functmpl.js"></script>[/code] [b]模板解析器实例[/b]
//创建一个解析器
let ftl = functmpl();
//加入功能处理器
ftl.use(functmpl.func);
//模板解析
ftl.template = '<!DOCTYPE html>n
<html>n
<head>n
  <title><`=title`></title>n
</head>n
<body>n
  <@enum key="key" value="value" var=list>n
    <@scope>n
      <@set key="key" value="1" type="create"/>n
      <`=key`>:<`=value`><br>n
    </>n
    <`=key`>:<`=value`><br>n
  </>n
</body>n
</html>'
//设置模板位置如果使用<#包含/>,必须要有一个基本的相对位置
ftl.filename = 'template.ftl';
//也可以直接读取模板文件
ftl.loadFile('template.ftl',function(status){
  if (status) {
    //读取文件成功,并且已经解析
    //调用模板生成数据
    ftl.parse(function(text){
      //当生成完毕后调用回调函数
      console.log("生成完成:n" + text);
    },JSON.parse(data.value));
  } else {
    //读取文件失败
  }
});
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部