gpt4 book ai didi

javascript - 我可以将参数从 Grunt 传递到 Javascript 吗?

转载 作者:太空宇宙 更新时间:2023-11-04 13:14:44 25 4
gpt4 key购买 nike

我有一个由 Grunt 构建的 HTML5+JS 代码。我目前正在设置开发和生产环境。

有没有办法将参数从 Grunt 传递到 JS 代码?这样我就可以传递开发/生产服务器的 IP,具体取决于我正在构建的服务器。

顺便说一句,我注意到 Grunt 选项允许定义 Grunt 参数 ( http://gruntjs.com/api/grunt.option ),但我如何在 JS 代码中使用它们?

如果有更好的做法为一个 JS 项目设置两个环境,请告诉我。

谢谢!

最佳答案

有几个插件可以帮助您。
让我们采取includereplace例如。
npm 安装 grunt-include-replace --save-dev

您可以在 Gruntfile 中定义要替换的变量。
然后链接到您要运行任务的文件。
如果您想通过 CLI 添加值,可以按照您的建议使用 grunt.option API。

Gruntfile.js

module.exports = function(grunt) {

var ip = grunt.option('ip') || '127.0.0.1';

grunt.initConfig({
includereplace: {
dev: {
options: {
globals: {
ip: ip
},
},
src: 'file.js',
dest: 'dest/'
},
prod: {
options: {
globals: {
ip: ip
},
},
src: 'file.js',
dest: 'dest/'
}
}
});

grunt.loadNpmTasks('grunt-include-replace');

grunt.registerTask('dev', ['includereplace:dev']);
grunt.registerTask('prod', ['includereplace:prod']);

};

文件.js

var ip = '@@ip';

我将 dev 和 prod 配置分开,这样您就可以为每个环境添加不同的变量。

运行 grunt prod --ip=XXX.XXX.XXX.XXX 将在 dest 文件夹中生成一个具有新值的新文件。

如果您不喜欢 @@ 占位符约定,您可以通过 Custom Options 轻松更改它。 API。

关于javascript - 我可以将参数从 Grunt 传递到 Javascript 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29679008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com