2

编辑工作版本和解释

我想使用 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 的帮助下,我无需通过 web usinggrunt-exec和 do using COPYor XCOPYshell 命令就可以做到这一点。

前任。

   exec: {
     copy : {
        cmd: function () {
               var path = "\\\\dev-server123\\WebSites\\Static_Contents\\Media\\clientcontent";
               return "copy dist\\*.min.js " + path + " /y";
        }
     }
   }
4

1 回答 1

1

看起来 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,可能有更好的。但这似乎工作正常。

于 2014-12-10T17:12:15.203 回答