6

我想知道是否可以缩小 EJS 文件等模板文件中包含的 JS 代码。

有用吗?我在考虑表演。它仍然是一种隐藏评论、解释的方法。

4

2 回答 2

2

这似乎是最好的解决方案。基本上,你想使用 EJS 的 renderFile 方法,然后使用UglifyJS对渲染结果进行 uglify。

app.get('/js/my.js', (req, res) => {
  var data = {foo:'bar'}
  ejs.renderFile('views/js/my.js.ejs', {data}, (err, js) => {
    if(err) return res.status(500).send("error")
    res.setHeader('Content-Type', 'text/javascript')
    res.send(UglifyJS.minify(js))
  })
})
于 2018-05-19T00:54:41.513 回答
1

您可以使用node-minify来缩小您的 Javascript、HTML 和 CSS 文件。

此外,您不应该在渲染时缩小文件(在传入请求中)。我通常使用我的 EJS 文件将配置传递给 UI,并从 S3 或公共端点加载 UI。

您可以拥有包含脚本标签的 index.ejs

<script type='text/javascript'>
  var clientSideConfig =<%-JSON.stringify(backendConfigurations)%>
</script>
<script src="/public/your_minified_vuejs.js"></script>
于 2020-05-31T22:23:06.777 回答