在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 相关文章推荐
WordPress 照片lightbox效果的运用几点
Jun 22 Javascript
jQuery实现单行文字间歇向上滚动源代码
Jun 02 Javascript
JavaScript创建对象的写法
Aug 29 Javascript
jquery合并表格中相同文本的相邻单元格
Jul 17 Javascript
AngularJS中一般函数参数传递用法分析
Nov 22 Javascript
js中Number数字数值运算后值不对的解决方法
Feb 28 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
Jun 13 Javascript
vue中SPA单页面应用程序详解
Nov 07 Javascript
Angular2.0实现modal对话框的方法示例
Feb 18 Javascript
微信小程序实现自定义加载图标功能
Jul 19 Javascript
vue实现跨域的方法分析
May 21 Javascript
jQuery实现二级导航菜单的示例
Sep 30 jQuery
微信小程序自定义头部导航栏(组件化)
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
关于js与php互相传值的介绍
2013/06/25 PHP
PHP判断浏览器、判断语言代码分享
2015/03/05 PHP
PHP如何根据文件头检测文件类型实例代码
2018/10/14 PHP
初步使用Node连接Mysql数据库
2016/03/03 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
2016/05/05 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
从零学习node.js之文件操作(三)
2017/02/21 Javascript
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
JS实现合并json对象的方法
2017/10/10 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
vue中接口域名配置为全局变量的实现方法
2018/09/20 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
jquery+php后台实现省市区联动功能示例
2019/05/23 jQuery
详解Vue的ref特性的使用
2020/01/24 Javascript
Python 自动安装 Rising 杀毒软件
2009/04/24 Python
Python基于scapy实现修改IP发送请求的方法示例
2017/07/08 Python
Python实现动态给类和对象添加属性和方法操作示例
2020/02/29 Python
Python小整数对象池和字符串intern实例解析
2020/03/21 Python
激光脱毛、蓝光和护肤:Tria Beauty
2019/03/28 全球购物
Yahoo-PHP面试题4
2012/05/05 面试题
外企测试工程师面试题
2015/02/01 面试题
艺术系大学生毕业个人自我评价
2013/09/19 职场文书
高中毕业生自我鉴定例文
2013/12/29 职场文书
计算机专业毕业生自荐信
2013/12/31 职场文书
房产公证书范本
2014/04/10 职场文书
《鸟岛》教学反思
2014/04/26 职场文书
供电工程专业求职信
2014/08/09 职场文书
学习朴航瑛老师爱岗敬业先进事迹思想汇报
2014/09/17 职场文书
个人整改方案范文
2014/10/25 职场文书
个人工作表现自我评价
2015/03/06 职场文书
义诊活动通知
2015/04/24 职场文书
太空授课观后感
2015/06/17 职场文书
医院消毒隔离制度
2015/08/05 职场文书
PHP遍历数组的6种方式总结
2021/11/17 PHP
Windows11性能真的上涨35%? 桌面酷睿i9实测结果公开
2021/11/21 数码科技
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript