node.js - 如何从 grunt 命令行动态发送变量到 grunt 复制任务

标签 node.js gruntjs grunt-contrib-watch

我正在尝试将 grunt 与 Jenkins 集成,但在复制文件时遇到一个问题。

我正在尝试从 grunt 命令行动态传递文件路径,以便用户可以动态选择路径。因为我们的版本一直在变化。

所以我在 gruntfile.js 顶部声明

var pathValue="";

所以我有一个名为

的任务
grunt.registerTask('deploy', ['copy']);

我正在从命令行读取路径,如下所示

grunt --target=\\\\machine1\\versionno\\js\\

var target = grunt.option('target');

我的复制语法如下所示

copy: {
          main: {
            files: [
              // includes files within path                  
              {expand: true, flatten: true, src: ['dest/**'], dest: **pathValue**, filter: 'isFile'}        
            ]
          }
        },

但不知何故,该值没有设置为该变量

我错过了什么吗?请告诉我。

我想做的就是动态地将值从命令行发送到目标目录

谢谢

最佳答案

不知道这是否只是您的示例有问题,但您从未将 pathValue 设置为您的选项,请尝试:

pathValue = grunt.option('target');

关于node.js - 如何从 grunt 命令行动态发送变量到 grunt 复制任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20481760/

相关文章:

javascript - 在 Node.js 模块中立即调用

node.js - Node js 方法结果不一致

javascript - 动态更新 Grunt 配置字段

node.js - 配置 grunt watch 以使用 requirejs 对应用程序运行 Jasmine 测试

node.js - Grunt.js : Fire livereload as soon a files are modified, 任务完成前

node.js - 注销Azure Passport身份验证Node js

node.js - 从源 'http://localhost:3000/api/twitter-login' 访问 Twitter_OAuth_Url 处的 XMLHttpRequest(从 'null' 重定向)已被阻止

gruntjs - Yeoman 使用 "grunt"命令启动项目时出错

javascript - 使用 requirejs 优化器优化后,Angularjs 找不到模块

gruntjs - 设置 grunt 来启动和实时重新加载浏览器(使用最少的插件)