在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 相关文章推荐
你需要知道的JavsScript可以做什么?
Jun 29 Javascript
JS学习之一个简易的日历控件
Mar 24 Javascript
js常用数组操作方法简明总结
Jun 20 Javascript
JavaScript定义变量和变量优先级问题探讨
Oct 11 Javascript
jQuery中prop()方法用法实例
Jan 05 Javascript
JS实现窗口加载时模拟鼠标移动的方法
Jun 03 Javascript
jQuery匹配文档链接并添加class的方法
Jun 26 Javascript
JavaScript中省略元素对数组长度的影响
Oct 26 Javascript
jQuery 表单序列化实例代码
Jun 11 jQuery
详解vuex中mapState,mapGetters,mapMutations,mapActions的作用
Apr 13 Javascript
JavaScript new对象的四个过程实例浅析
Jul 31 Javascript
vue中img src 动态加载本地json的图片路径写法
Apr 25 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
网页游戏开发入门教程三(简单程序应用)
2009/11/02 PHP
destoon整合UCenter图文教程
2014/06/21 PHP
PHP实现更新中间关联表数据的两种方法
2014/09/01 PHP
PHP简单选择排序算法实例
2015/01/26 PHP
MAC下通过改apache配置文件切换php多版本的方法
2017/04/26 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
JS获得QQ号码的昵称,头像,生日的简单实例
2013/12/04 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
jQuery中change事件用法实例
2014/12/26 Javascript
jQuery实现返回顶部效果的方法
2015/05/29 Javascript
js判断手机端(Android手机还是iPhone手机)
2015/07/22 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
微信小程序 window_x64环境搭建
2016/09/30 Javascript
全面解析node 表单的图片上传
2016/11/21 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
2017/02/10 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
2017/03/09 Javascript
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
JavaScript的变量声明与声明提前用法实例分析
2019/11/26 Javascript
python实现批量下载新浪博客的方法
2015/06/15 Python
Python循环语句中else的用法总结
2016/09/11 Python
python爬虫实例详解
2018/06/19 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
TensorFlow 读取CSV数据的实例
2020/02/05 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
Python loguru日志库之高效输出控制台日志和日志记录
2020/03/07 Python
keras中的loss、optimizer、metrics用法
2020/06/15 Python
python上selenium的弹框操作实现
2020/07/13 Python
Python读取ini配置文件传参的简单示例
2021/01/05 Python
HTML5 直播疯狂点赞动画实现代码 附源码
2020/04/14 HTML / CSS
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
专升本自我鉴定
2013/10/10 职场文书
八年级美术教学反思
2014/02/02 职场文书
高中生操行评语大全
2014/04/25 职场文书
志愿者活动总结
2014/04/28 职场文书
2014年教育实习工作总结
2014/11/22 职场文书
《确定位置》教学反思
2016/02/18 职场文书