我正在为任务设置一个grunt文件。我的目标是从sass文件(scss)创建一个css文件,并为所有需要的属性添加一个autoprefix。最初我使用了propriety multifiles,但它不起作用,所以现在我使用的目标功能很好,但我的问题是,即使我的目标是同一个文件,它也会在我的文件夹中创建另一个文件放下我所有的sass文件。
到目前为止,我的文件如下:
module.exports = function (grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
sass: {
dev: {
options: {
style: 'expanded',
sourcemap: 'none',
},
files: {
'../style.css': 'scss/style.scss'
}
},
dist: {
options: {
style: 'compressed',
sourcemap: 'none',
},
files: {
'../style-min.css': 'scss/style.scss'
}
}
},
autoprefixer: {
options: {
browsers: ['last 6 versions']
},
target: {
expand: true,
flatten: true,
src: '../style.css',
dest: ''
}
},
watch: {
css: {
files: '**/*.scss',
tasks: ['sass', 'autoprefixer']
}
},
});
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-autoprefixer');
grunt.registerTask('default', ['watch']);
}
我的目标是为我的所有css文件设置一个全局任务,如下所示:
target: {
expand: true,
flatten: true,
src: '*.css',
dest: ''
}
但是即使我尝试了类似的东西它也无法正常工作:
target: {
expand: true,
flatten: true,
src: '../*.css',
dest: ''
}
有谁知道为什么?
答案 0 :(得分:1)
使用cwd
(代表当前工作目录),这是grunt查找与src
中的模式匹配的文件的路径。还要定义dest
,以便在同一文件夹中创建目标文件。
target: {
expand: true,
flatten: true,
cwd: '../',
src: [ '**/*.css' ],
dest: '../'
}