我可以按正确的顺序连接文件,可以在输出文件的顶部和底部添加(function(){'use strict';
,但不知道如何从单个文件中删除}());
和(function(){'use strict';
串联之前的文件。
我通读了文档,并尝试使用custom process example,我知道我需要对该行}());
进行一些更改,但是不幸的是,我不了解该行或如何更改它。
最后,我不知道进行更改是否重要。当我合并并缩小代码时,请保持不变,不要添加横幅和页脚,一切正常。用一个单独的使用限制代替有什么好处?
从我的Gruntfile
concat: {
options: {
banner: "(function(){'use strict';\n",
footer: '}());',
process: function(src, filepath) {
return '// Source: ' + filepath + '\n' +
src.replace(/(^|\n)[ \t]*('use strict'|"use strict");?\s*/g, '$1');
}
},
nonMin: {
src: ['src/angular-gmap-gplace.js', 'src/modules/*.js'],
dest: 'dist/angular-gmap-gplace.js'
},
min: {
src: ['src/**/*.js'],
dest: '.tmp/concat.js'
}
}
最佳答案
用一个单独的使用限制代替有什么好处?
不。只有弊端。
在每个文件中使用IIFE意味着每个文件都有其自己的作用域,并且,除非您有意创建了全局文件,否则不会干扰其他文件。
如果将它们合并为一个IIFE,则不再是正确的,它们彼此共享范围。您可能会不小心覆盖一个文件使用的变量,而该变量在另一个文件中的名称相同。
关于javascript - 如何删除(function(){'use strict';} and());与grunt-contrib-concat串联时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39375505/