在Grunt中,我曾经使用过一个名为env的插件.这将允许我在特定构建中定义环境.我有3个版本.一个是DEV,它将使用单独拆分的所有文件.PROD将连接所有内容,RELEASE将连接和uglify.我想在Gulp做同样的事情.我确实看到了Gulp的预处理器,但没有定义环境.
问题是.我能做什么?显然我不想一直定义所有JS文件,我不希望3个不同的HTML页面具有不同的脚本标记.
在我的HTML中我会有这样的事情:
<!-- @if NODE_ENV == 'DEVELOPMENT' -->
<script src="js/example1.js" type="text/javascript"></script>
<script src="js/example2.js" type="text/javascript"></script>
<script src="js/example3.js" type="text/javascript"></script>
<!-- @endif -->
<!-- @if NODE_ENV == 'PRODUCTION' -->
<script src="js/project.js" type="text/javascript"></script>
<!-- @endif -->
<!-- @if NODE_ENV == 'RELEASE' -->
<script src="js/project.min.js" type="text/javascript"></script>
<!-- @endif -->
Run Code Online (Sandbox Code Playgroud)
我的咕噜插件看起来像这样:
env: {
dev: {
NODE_ENV: 'DEVELOPMENT'
},
prod: {
NODE_ENV: 'PRODUCTION'
},
release: {
NODE_ENV: 'RELEASE'
}
},
preprocess: {
options: {
context: {
name: '<%= pkg.outputName %>',
version: '<%= pkg.version %>', …
Run Code Online (Sandbox Code Playgroud) 我猜我错过了Browserify的一些东西.我想浏览我的自定义节点模块,它暴露了一些功能.我该怎么办?
我在browserify中看到的每个例子总是一个console.log或一个警报.如果它立即运行对我不好.我想按需运行我的browserify代码.
但是为了这个例子.假设我导出sum方法.举个例子:
module.exports = {
sum = function(a, b) {
return a + b;
}
};
Run Code Online (Sandbox Code Playgroud)
之后我通过标准命令浏览它:browserify index.js -o bundle.js.
然后我将此文件添加到我的index.html.
在我的AngularJS应用程序或任何客户端代码中.如何访问此求和方法?
我在window.sum上找不到它.或者也许我弄错了.