Art-Template模板语法

Art-Template

使用模板语法(art-template)

art-template官网地址(https://aui.github.io/art-template/zh-cn/docs/installation.html)

  • 使用npm 导入

    • npm install art-template --save
      
  • 基本使用

    • var template = require('art-template')
      // // 基于模板名渲染模板
      // template(filename, data);
      //
      // // 将模板源代码编译成函数
      // template.compile(source, options);
      // 将模板源代码编译成函数并立刻执行
      // template.render(source, data, options);
      
      // 将模板源代码编译成函数并立刻执行
      let demo = template.render(' 我叫 {{name}} ,今年{{age}}岁 ',{
          age : 12,
          name : 'jwq'
      });
      console.log(demo)
      //source也可以使用变量代替
      
  • 也可以通过文件读取的方式,读取html去使用

    • var template = require('art-template')
      // // 基于模板名渲染模板
      // template(filename, data);
      //
      // // 将模板源代码编译成函数
      // template.compile(source, options);
      // 将模板源代码编译成函数并立刻执行
      // template.render(source, data, options);
      var fs = require('fs')
      fs.readFile('./art-template.html',function (err,data) {
          if(err){
              return console.log(' 读取错误 ')
          }
          // 将模板源代码编译成函数并立刻执行
          let demo = template.render(data.toString(),{
              age : 12,
              name : 'jwq'
          });
          console.log(demo)
      })
      //其中'./art-template.html'为html文件,里面包含{{name}}{{age}}
      
    • 去读取目录(js文件)

      let http = require('http')
      let fs = require('fs')
      let template = require('art-template')
      let server = http.createServer()
      server.on('request', function (req, res) {
          let url = req.url
          if (url === '/') {
              fs.readFile('./art-template.html', function (err, data) {
                  let demo = 'D:/xlyl/学习node/code'
                  fs.readdir(demo, function (err, file) {
                      if (err) {
                          return res.end('404 err')
                      }
                      let demo = template.render(data.toString(), {
                          file: file,
                          name:'jwq',
                          age:12
                      });
                      res.end(demo)
                      // console.log(demo)
                      // console.log(file)
                  })
              })
      
          }
          // res.end('hello')
      })
      server.listen(3000, function () {
          console.log('running........')
      })
      
    • 去读取art-template.html(html文件)

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Title</title>
      </head>
      <body>
      <p>我叫{{name}}</p>
      <p>今年{{age}}</p>
      <p>{{each file}}</p>
      <p>{{$value}}{{/each}}</p>
      </body>
      </html>
      
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Art-template是一款高性能、轻量级的模板引擎,适用于Node.js和浏览器环境。它以简洁明了的语法,支持模板继承、条件判断、循环遍历等常见功能,同时还提供了强大的过滤器和自定义标签功能。 Art-template的使用逻辑如下: 1. 安装Art-template 可以通过npm安装Art-template,命令如下: ```npm install art-template --save``` 2. 引入Art-templateNode.js中,可以使用require语句引入Art-template: ```const template = require('art-template');``` 在浏览器中,可以使用script标签引入Art-template: ```<script src="path/to/art-template.js"></script>``` 3. 编写模板 Art-template使用{{}}包裹变量、表达式或语句。例如,以下是一个简单的模板: ``` <!DOCTYPE html> <html> <head> <title>{{title}}</title> </head> <body> <h1>{{title}}</h1> <p>{{content}}</p> </body> </html> ``` 4. 渲染模板 使用template方法可以将模板渲染成字符串。例如: ``` const template = require('art-template'); const data = { title: 'Art-template', content: 'A lightweight and powerful template engine' }; const html = template('path/to/template', data); console.log(html); ``` 在上面的例子中,我们将data对象传递给了模板,使用{{}}包裹的变量会被替换成data对象中的对应值,最终输出渲染后的HTML字符串。 5. 高级用法 除了基本的变量替换,Art-template还支持模板继承、条件判断、循环遍历等高级用法。例如,以下是一个使用if语句和each语句的模板: ``` {{if isAdmin}} <p>Welcome, admin</p> {{else}} <p>Welcome, user</p> {{/if}} <ul> {{each list}} <li>{{$index}}. {{$value}}</li> {{/each}} </ul> ``` 以上就是Art-template的使用逻辑,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值