如何通过JavaScript函数生成Pug混合或引入Pug文件
用JavaScript函数渲染Pug混合/引入Pug文件的实现方案
大家好,我之前一直在琢磨怎么用JavaScript函数渲染Pug混合(mixin)或者引入Pug文件,现在终于找到可行的解决方案啦!特意分享出来,说不定能帮到碰到同样问题的朋友 😊
核心方案:使用Pug官方API pug.compileFileClient
这个API的作用是将Pug模板文件编译为可配合Pug运行时在客户端使用的JavaScript字符串,刚好能满足前端用JS调用Pug模板的需求。
Node.js后端处理步骤
可以在后端把Pug模板编译成JS函数字符串,还能把所有模板统一写入一个JS文件供前端调用:
// 将模板编译为函数字符串 var jsFunctionString = pug.compileFileClient(path.join(__dirname, '../views/src/template.pug'), {name : "myTemplateName"}) ; // 把编译后的函数写入指定JS文件,提供给客户端使用 fs.writeFileSync ("yourFileJSToUseIt.js", jsFunctionString) ;
控制台命令编译方式
如果不想写后端代码,也可以用Pug命令行工具直接编译:
先全局安装Pug CLI:
npm install pug-cli -g
再编译指定Pug文件:
pug --client --name myTemplateFunction my-pug-file.pug
前端JavaScript调用
前端引入编译好的JS文件后,直接调用生成的模板函数就能得到渲染后的HTML:
var html = window.myTemplateFunction ({auteur : authorValue}) ;
最后还是要谢谢大家的关注,抱歉之前提问的时候信息没给全... 也感谢Graham的帮助 :)
内容的提问来源于stack exchange,提问作者Panorius
相关产品推荐
相关产品推荐

