Javascript 根据环境链接express js中的资产

Javascript 根据环境链接express js中的资产,javascript,node.js,express,assets,nunjucks,Javascript,Node.js,Express,Assets,Nunjucks,是否有一种方法可以根据环境链接我的html文件中的资产(确切地说,在我的例子中是nunjucks文件)?我想在dev env中包含几个部分的*.css或*.js文件,以便更轻松地进行调试,并在prod env中包含一个concatated的*.min.css和*.min.js文件(类似于Symfony中的assetic)。您可能需要通过构建过程来完成这项工作。优秀的任务执行者包括和 你可以用类似的东西。这将允许您在html中放置直接脚本/链接标记,然后运行grunt命令将它们组合起来。这将根据模

是否有一种方法可以根据环境链接我的html文件中的资产(确切地说,在我的例子中是nunjucks文件)?我想在dev env中包含几个部分的*.css或*.js文件,以便更轻松地进行调试,并在prod env中包含一个concatated的*.min.css和*.min.js文件(类似于Symfony中的assetic)。

您可能需要通过构建过程来完成这项工作。优秀的任务执行者包括和


你可以用类似的东西。这将允许您在html中放置直接脚本/链接标记,然后运行grunt命令将它们组合起来。

这将根据模板系统的不同而有所不同,但基本原理如下:

在控制器中-使环境可用于模板:

res.render("template", {
 env: process.env.NODE_ENV || 'development'
});
模板:

{% if env === 'development' %}
<script>....</script>
<script>....</script>   
{% else %}
<script src="prod.min.js"></script>
{% endif %}
{%if env=='development%}
....
....   
{%else%}
{%endif%}

此外,使用@vernak2539的答案,使用gulp或grunt以及minify/uglify/concat插件构建prod.min.js文件,或者使用CodeKit等“手动”操作。

感谢您的回答。我已经在使用这种方法了,但在我看来,它总是不适合那个任务@vernak2539给出了我所期望的答案:)太好了-我使用这两种方法,因为我需要为开发分离所有js文件,为产品缩小js文件。我尝试使用gulp-onlu方法,这使调试更加困难。这正是我想要的:)顺便说一句,我正在使用gulp,所以这将是完美的。把我的大部分东西吞下去。似乎每一个咕噜声都有一个大口大口的包装。