我正在维护一个广泛使用Grunt的Web应用程序。我必须缩小,在不同的时间将我的html,css,js文件复制到不同的位置。所以为了方便起见,我在GruntFile.js中创建了一个简单的javascript变量,如下所示:
var path="C:/dist";
uglify: {
options: {
mangle: false
},
my_target: {
files: {
path+'/js/jsFile.js': ['src/js/jquery-1.10.2.min.js']
}
}
}
当我构建这个时,我收到以下错误
>> SyntaxError: Unexpected token +
我不能在GruntFile.js中使用路径变量。因为我有10个位置路径。
答案 0 :(得分:46)
另一种方法是使用Grunt模板:
grunt.initConfig({
path: 'C:/dist/',
uglify: {
options: {
mangle: false
},
'<%= path %>js/jsFile.js': ['src/js/jquery-1.10.2.min.js']
}
});
答案 1 :(得分:2)
javascript对象格式不允许变量作为实际键:
path+'/js/jsFile.js'
这应该适合你:
var path = "C:/dist";
var files = {};
files[path+"/js/jsFile.js"] = ['src/js/jquery-1.10.2.min.js'];
//...
options: {
mangle: false
},
my_target: {
files: files
}
您可以在此处看到几个使用变量作为关键的示例: