gpt4 book ai didi

gruntjs - grunt-contrib-uglify 输出为空

转载 作者:行者123 更新时间:2023-12-02 18:30:21 25 4
gpt4 key购买 nike

我一整天都在寻找答案,我确信这只是我的配置搞砸了。

简短版本:我已经配置了 grunt。 grunt-contrib-concat 可以工作。 grunt-contrib-uglify 说它可以工作,但输出一个空文件。

长版:项目结构为:

/projectRoot
->/dev
->/js
/foo.js
/bar.js
->/dist
->/js

我想获取 foo.js 和 bar.js 并将它们输出到/dist/js 目录中名为“app.js”的文件中。

这是我的配置:

module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),

concat: {
options:{
separator: ';'
},
dist:{
src:["js/foo.js", "js/barjs"],
dest:"../prod/js/app.js"
}
},

uglify:{
dist:{
files:{
"../prod/js/app.min.js":["js/foo.js", "js/bar.js"]
}
}
}
});



/**
* Set up tasks
* @type {string[]}
*/
var taskList = [
"grunt-contrib-concat",
"grunt-contrib-uglify"
];

for(var task in taskList){
grunt.loadNpmTasks(taskList[task]);
}

grunt.registerTask('default', ['concat']);
grunt.registerTask('dist', ['concat','uglify:dist']);
};

是的,Grunt 安装在我的 DEV 目录中。

当我运行时

grunt dist

我得到以下控制台输出:

Running "concat:dist" (concat) task
File ../prod/js/app.js created.

Running "uglify:dist" (uglify) task
File js/app.min.js created: 319 B → 0 B

Done, without errors.
Process finished with exit code 0

最后,它最终创建了文件/projectRoot/prod/js/app.min.js

...但是它是空的。

关于我做错了什么有什么想法吗?此语法完全遵循自述文件和我能找到的任何其他文档中的内容。 concat 任务运行得很好。

如有任何帮助,我们将不胜感激。谢谢!

--编辑--我更新了 Grunt,使其位于 projectRoot 中,但输出没有差异。

==============

更新

我找到了它输出空文件的原因。显然,自调用匿名函数被“缩小”了,或者至少在这种情况下是这样。这可能是因为这里没有事件代码。我将进一步研究这一点。我认为实际执行操作、引用全局变量等的函数将保留。

==============

最终更新

问题已解决。即使使用缩小所有代码的选项,它仍然会删除任何未引用的变量等。我的测试文件中的内容未使用。如果我添加对所述函数的引用,那么它们就会出现。

希望这对某人有帮助。

最佳答案

问题已解决。即使使用缩小所有代码的选项,它仍然会删除任何未引用的变量等。我的测试文件中的内容未使用。如果我添加对所述函数的引用,那么它们就会出现。由于没有引用任何函数,因此它们被删除,最终得到一个空文件。

希望这对某人有帮助。

关于gruntjs - grunt-contrib-uglify 输出为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24152773/

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