编辑工作版本和说明
我想使用 grunt 和 grunt-concat 以及类似的东西将来自不同服务器的文件连接到我的目标文件夹中:
concat: {
options: {
separator: ';'
},
dist: {
src: ['dev.staticcontent.com/media/clientcontent/library/*.js', 'js/*.js'],
dest: 'dist/<%= pkg.name %>.js'
}
},
每次尝试时,我都没有收到任何来自 grunt 的错误,但是我的 dist/marketing-home.js
文件是空的……就像它什么也没找到一样。
控制台:
C:\Project\My>grunt
Running "jshint:files" (jshint) task
>> 1 file lint free.
Running "concat:dist" (concat) task
File dist/marketing-home.js created.
Running "uglify:dist" (uglify) task
Done, without errors.
新版本
在 Kris 的帮助下,我无需通过网络使用 grunt-exec
并使用 COPY
或 XCOPY
外壳命令。
例如
exec: {
copy : {
cmd: function () {
var path = "\\\\dev-server123\\WebSites\\Static_Contents\\Media\\clientcontent";
return "copy dist\\*.min.js " + path + " /y";
}
}
}
最佳答案
看起来 concat 任务不处理绝对路径或来自远程位置的文件。但是,我能够使用 curl 任务结合 concat 任务来让它工作。
示例:
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
curl: {
'download/jquery.js': 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js',
},
concat: {
js: {
src: ['download/jquery.js'],
dest: 'output/test.js'
},
}
});
grunt.loadNpmTasks('grunt-curl');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.registerTask('default', ['curl', 'concat']);
};
演示目录结构:
我将这个节点模块包用于 CURL。 https://github.com/twolfson/grunt-curl ,那里可能有更好的。但这一个似乎工作正常。
关于javascript - Grunt 连接不同域或不同服务器上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27364948/