首页 >

Node.js项目中调用JavaScript的EJS模板库办法【node.js】

web前端|js教程

Node.js项目中调用JavaScript的EJS模板库办法【node.js】

Node.js,js,EJS,JavaScript
web前端-js教程
作为外部模块,调用的方法和mysql模块是相同的,不再赘述。
android studio聊天源码,vscode配置in文件,ubuntu repo,tomcat 访问xml,sqlite 亲和,网站网页设计前言,mssql导入数据库 命令,美双线服务器,js确认对话框插件,汽车前端框架英文翻译怎么写,文胸爬虫,php ext,重庆seo网站公司,过期索引springboot,标签云 php,网站前台软件,易语言 微信 网页多开,dz模板导入教程,php网站后台开发,app注册页面模板,web固定资产管理系统,许愿树 程序lzw
ejs的render函数有两个参数 第一个是字符串,第二个是可选的对象,和其他javascript模版一样需要渲染的数据也是包含在option对象中的
服装定制源码,vscode应用案例,ubuntu保存路径,tomcat 爆破工具,mfc sqlite 源码,浙江电信服务器,dz论坛插件安装方法,后端模板 vs 前端框架,合肥python爬虫,php培训哪些课程,seo关键字排名优化,商业网站模板王,网页鼠标转圈,化妆品公司网站模板,织梦手机静态页面,仓库进销存管理系统源码,vc程序代码lzw
ejs.render(str,option); // 渲染字符串 str 一般是通过nodejs文件系统的readfile方法读取 ejs.render(str,{   data : user_data // 需要渲染的数据 }); 
当str字符串中没有包含 include 标签时,渲染数据是没有问题的,反之,就会报错。前面已经讲过我的项目文件和nodejs的安装文件不在同一个根目录下。解决这个问题需要配置option参数的filename属性。
开源app源码 聊天,ubuntu展示应用按键,如何取消tomcat的图标,python自制爬虫,php网站的开发,上海多方位服务型seo效果lzw
查看ejs源码,会发现,ejs在处理include包含文件的路径时会用到一个resolveInclude函数:

function resolveInclude(name, filename) {  var path = join(dirname(filename), name);  var ext = extname(name);  if (!ext) path += '.ejs';  return path; } 
filename正是dirname函数的参数,作为nodejs核心模块的path.dirname(),返回的path总是相对nodejs的安装路径,如果不指定filename值,就会找不到文件
在使用dirname时应当注意,函数处理传入的路径参数时会截取第一个
‘/’ 之前的部分作为路径名例如:

path.dirname('/foo/bar/baz/asdf/quux') // returns '/foo/bar/baz/asdf' 
要取得tpl目录可以这样写:

path.dirname('/tpl/..') // return /tpl 
完整的render函数可以这样:

ejs.render(str,{   filename : path + '/tpl/..', //tpl文件中保存的是模版文件   data: user_data }); 

  • 暂无相关文章