я могу объединить мои файлы в правильном порядке, и я могу добавить (function(){'use strict';
к вершине и }());
в нижней части выходного файла, но я не знаю, как удалить (function(){'use strict';
и }());
из отдельные файлы перед конкатенацией.Как удалить (function() {'use strict';} and()); когда конкатенации с хрюкать-вно-CONCAT
Я прочитал документы, и я попытался использовать custom process example, и я знаю, что мне нужно внести некоторые изменения в эту строку src.replace(/(^|\n)[ \t]*('use strict'|"use strict");?\s*/g, '$1');
, но, к сожалению, я не понимаю эту строку или как ее изменить.
И, наконец, я не знаю, важно ли это изменить. Когда я соглашаюсь и уменьшаю свой код, оставьте его как есть, и не добавляйте баннер и нижний колонтитул, все работает нормально. Есть ли какая-либо польза для замены индивидуальных правил использования только одним?
С моей 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'
}
}
Кроме того, если вы поместите все файлы вместе, вы можете создать сочетание кодов, пытающихся получить доступ к * глобальной * переменной, при этом фактически получая доступ к вновь созданной локальной переменной. Например, если кто-то выполнил 'var Function = 'test';'. Если позже, вы пытаетесь сделать «var x = new Function (« return this »);', у вас будут * серьезные * проблемы, которые трудно отлаживать. –
Благодарим вас за объяснение. Это действительно помогло мне понять, что делать и, самое главное, почему. –