广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >Nodejs高扩展性的模板引擎 functmpl简介
  • 652
分享到

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

扩展性模板引擎 2022-06-04 17:06:50 652人浏览 安东尼
摘要

关于functmpl functmpl 是一个基于javascript/nodejs的高扩展性的模板引擎 模板格式 <#包含/> 如果想在一个模板中插入另一个模板,可以使用<#包含/>

关于functmpl

functmpl 是一个基于javascript/nodejs的高扩展性的模板引擎

模板格式

<#包含/>

如果想在一个模板中插入另一个模板,可以使用<#包含/>

比如插入模板 a.ftl :

<#"a.ftl"/>

<@功能/>

除了输出变量、包含模板外,也可以加入更多自定义的功能,比如:枚举、赋值

但额外的功能需要自定义。

自定功能的具体格式为

<@功能名称 参数名=参数值/>
<@功能名称 参数名=参数值>
子节点
</>
其中,参数名/参数值可以没有或者含有多对。

参数值可以是变量名,或者是JSON

子节点内容可以是普通内容、<=输出/>、<#包含/>或者<@功能/>

<`表达式`>

如果只是执行表达式,可以使用<`表达式`>

<`=输出`>

如果想输出一个变量的值,可以使用<=输出/>

比如输出变量 val 的值

<`=val`>

如何使用

获得functmpl

使用npm 或者 git


npm install functmpl
git clone git@GitHub.com:wanGChenxunum/functmpl.git
git clone git@git.oschina.net:wangchenxunum/functmpl.git

引入到nodejs

let functmpl = require('functmpl');

引入到浏览器

<script src="functmpl.js"></script>

模板解析器实例


//创建一个解析器
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 {
    //读取文件失败
  }
});

--结束END--

本文标题: Nodejs高扩展性的模板引擎 functmpl简介

本文链接: https://www.lsjlt.com/news/12795.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作