在node环境下parse Smarty模板的使用示例代码


Posted in Javascript onNovember 15, 2019

因为某种原因,我们的项目必须采用smarty模板,一直没找到好用的npm包
不得已扒开了fis3-smarty, gulp-smarty的代码,找到了一个npm包
smarty4Js
然后解决了node环境渲染smarty的问题

代码如下:

// index.js: 
const express = require('express');
const smarty4Js = require('smarty4Js');
const path = require('path');
const app = express();
const smartyHelper = new smarty4Js();
const basePath = path.resolve('./');
smartyHelper.setBasedir(basePath);
const compiler = smartyHelper.compile('./index.tpl');
const html = compiler.render({
  title: 'node-parse-smarty',
  body: 'Smarty'
});
console.log(html);
app.get('/', (req, res) => {
  res.header('text/html');
  res.end(html);
});

app.listen(3000, () => {
  console.log('app is run at 3000 port');
});
// index.tpl: 
<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport"
     content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>{%$title%}</title>
</head>
<body>
<div id="footer">{%$body%}</div>
</body>
</html>

结果如下:

在node环境下parse Smarty模板的使用示例代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery select的操作实现代码
May 06 Javascript
JQuery Highcharts 动态生成图表的方法
Nov 15 Javascript
浅析jQuery Mobile的初始化事件
Dec 03 Javascript
AngularJS实现表单验证功能
Jan 09 Javascript
微信小程序 传值取值的几种方法总结
Jan 16 Javascript
解决webpack -p压缩打包react报语法错误的方法
Jul 03 Javascript
浅谈Angular路由守卫
Aug 26 Javascript
vuex操作state对象的实例代码
Apr 25 Javascript
JS获取当前时间的实例代码(昨天、今天、明天)
Nov 13 Javascript
爬虫利器Puppeteer实战
Jan 09 Javascript
layui动态绑定事件的方法
Sep 20 Javascript
实例讲解JavaScript 计时事件
Jul 04 Javascript
微信小程序自定义头部导航栏(组件化)
Nov 15 #Javascript
create-react-app中添加less支持的实现
Nov 15 #Javascript
taro小程序添加骨架屏的实现代码
Nov 15 #Javascript
详解Angular Karma测试的持续集成实践
Nov 15 #Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
Nov 15 #Javascript
JavaScript定时器常见用法实例分析
Nov 15 #Javascript
解决Layui 表格自适应高度的问题
Nov 15 #Javascript
You might like
Linux下PHP加速器APC的安装与配置笔记
2014/10/24 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
php实现常见图片格式的水印和缩略图制作(面向对象)
2016/06/15 PHP
php学习笔记之mb_strstr的基本使用
2018/02/03 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
PHP实用小技巧之调用录像的方法
2019/12/05 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
JavaScript事件委托的技术原理探讨示例
2014/04/17 Javascript
jQuery简单实现禁用右键菜单
2015/03/10 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
JavaScript希尔排序、快速排序、归并排序算法
2016/05/08 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
AngularJS入门教程之控制器详解
2016/07/27 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能
2019/01/22 Javascript
js 将线性数据转为树形的示例代码
2019/05/28 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
[44:39]2014 DOTA2国际邀请赛中国区预选赛 NE VS CNB
2014/05/21 DOTA
python将人民币转换大写的脚本代码
2013/02/10 Python
TensorFlow实现卷积神经网络CNN
2018/03/09 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
django drf框架自带的路由及最简化的视图
2019/09/10 Python
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
美国领先的机场停车聚合商:Airport Parking Reservations
2020/02/28 全球购物
怎样在程序里获得一个空指针
2015/01/24 面试题
医药代表个人的求职信分享
2013/12/08 职场文书
医学生个人求职信范文
2014/02/07 职场文书
七一建党节演讲稿
2014/09/11 职场文书
贫困证明书范文
2015/06/16 职场文书
反腐倡廉学习心得体会范文
2015/08/15 职场文书
2016优秀毕业生个人事迹材料
2016/02/29 职场文书
Go语言操作数据库及其常规操作的示例代码
2021/04/21 Golang
为什么RedisCluster设计成16384个槽
2021/09/25 Redis