模板引擎是第三方模块,让开发者以更加友好的方式拼接字符串,使项目代码更加清晰、更加易于维护
art-template模板引擎
使用npm install art-template下载
使用const template = require(‘art-template’);引入模板引擎
告诉模板引擎要拼接的数据和模板在哪 const html = template(‘模板路径’,数据);
//导入模板引擎模块
const template = require('art-template');
const path = require('path');
//将特定模板与特定数据进行拼接
//template方法是用来拼接字符串的 1.模板的绝对路径
//2.要在模板中显示的数据 对象类型 返回拼接好的字符串
const views = path.join(__dirname,'views','index.art');
const html = template('views',{
data:{
name:'张三',
age:20
}
});
index.art
<div>
<span>{{data.name}}</span>
<span>{{data.age}}</span>
</div>
//模板会把花括号的内容换成对应的数据
模板语法:
标准语法中的target代表数组,$index代表数组的每个下标,$value代表数组的每个对象
users代表数组的名字,$value代表数组中的每个对象,对象中的每个属性可以用 . 的方式来获取
include后面跟的是配置msg数据的文件路径
拼接的字符串都是template当中给的字符串
写好一个模板,共同的地方用相同的代码,不同的地方用模板引擎进行替换,写好block后的属性标记好要替换的位置
extend代表要继承的模板,后面跟已经写好的模板路径,下面的head和content代表要继承的位置,中间的代码代表要继承的内容
处理时间的模板:
dateformate需要使用npm下载,new Date()代表创建当前时间
向模板中导入变量template.defaults.imports.变量名=变量值;这样在配置的模板中可以直接使用这个变量名
设置模板的根目录template.defaults.root=模板目录,这样在template中的第一个参数只需要传入文件名称即可
设置模板默认后缀 template.defaults.extname=’.art’,这样在template中的第一个参数传入的文件名可以不需要带后缀,如果传入后缀,就会找该具体的文件