在 g运行t 中循环到 运行 相同的脚本但传入不同的参数
For loop in grunt to run the same script but pass in different args
所以我有这个 javascript 文件,我目前可以 运行 使用 cmd node runfile.js accountName
。
我正在尝试创建一个 g运行t 任务,该任务将循环遍历 accountNames 数组以使用 g运行t-exec 传递到此 cmd。
我是 g运行t 的新手,如果措辞不当,我深表歉意。非常感谢任何帮助!
当前 g运行t 文件如下所示:
grunt.initConfig({
exec: {
login: function(acct){
return 'node runfile.js' + acct;
}
},
});
我能够使用以下代码成功地做到这一点。
module.exports = function(grunt) {
grunt.initConfig({
exec: {
runMobile: {
cmd: function(account, password){
return 'node javascript.js ' + account + ' ' + password
}
},
runDesktop: {
cmd: function(account, password, first_name){
return 'node javascript2.js ' + account + ' ' + password + ' ' + first_name
}
}
}
});
grunt.loadNpmTasks('grunt-exec');
//get our list of accounts
var fs = require('fs');
var data = JSON.parse(fs.readFileSync('node_modules/selenium-webdriver/example/accounts.json', 'utf-8'));
grunt.registerTask('default', 'Running The task',function(){
data.accounts.forEach(function(payload){
grunt.task.run('exec:runMobile:'+payload.account+':'+payload.password);
grunt.task.run('exec:runDesktop:'+payload.account+':'+payload.password+':'+payload.first_name);
});
});
};
所以我有这个 javascript 文件,我目前可以 运行 使用 cmd node runfile.js accountName
。
我正在尝试创建一个 g运行t 任务,该任务将循环遍历 accountNames 数组以使用 g运行t-exec 传递到此 cmd。
我是 g运行t 的新手,如果措辞不当,我深表歉意。非常感谢任何帮助!
当前 g运行t 文件如下所示:
grunt.initConfig({
exec: {
login: function(acct){
return 'node runfile.js' + acct;
}
},
});
我能够使用以下代码成功地做到这一点。
module.exports = function(grunt) {
grunt.initConfig({
exec: {
runMobile: {
cmd: function(account, password){
return 'node javascript.js ' + account + ' ' + password
}
},
runDesktop: {
cmd: function(account, password, first_name){
return 'node javascript2.js ' + account + ' ' + password + ' ' + first_name
}
}
}
});
grunt.loadNpmTasks('grunt-exec');
//get our list of accounts
var fs = require('fs');
var data = JSON.parse(fs.readFileSync('node_modules/selenium-webdriver/example/accounts.json', 'utf-8'));
grunt.registerTask('default', 'Running The task',function(){
data.accounts.forEach(function(payload){
grunt.task.run('exec:runMobile:'+payload.account+':'+payload.password);
grunt.task.run('exec:runDesktop:'+payload.account+':'+payload.password+':'+payload.first_name);
});
});
};