Опитвам се да автоматизирам работния ми поток с помощтаот Грънт. Имам всичко зададено, но задачата на часовника не работи - мога да го стартирам, но не открива промени. Проблемът наистина трябва да бъде в задачата за наблюдение, тъй като мога да задействам задачата на ръка и да се компилира правилно без проблеми.
Моят Gruntfile изглежда така:
module.exports = function (grunt) {
require("load-grunt-tasks")(grunt);
grunt.initConfig({
pkg: grunt.file.readJSON("package.json"),
sass: {
dist: {
options: {
"style": "compressed"
},
expand: true,
cwd: "./sass/",
src: "style.scss",
dest: "./css/",
ext: ".css"
},
dev: {
options: {
"style": "expanded",
},
expand: true,
cwd: "./sass/",
src: "style.scss",
dest: "./css/",
ext: ".css"
}
},
watch: {
sass: {
files: ["<%= sass.dev.src %>"],
tasks: ["default"]
}
}
});
grunt.registerTask("default", ["sass:dev"]);
};
Структурата в директорията на проекта изглежда така:
Gruntfile.js
index.html
package.json
css
> style.css (created by sass task)
node_modules
> all required modules
sass
> style.scss
За мен всичко изглежда добре, но тъй като не е такаработата нещо трябва да е наред. Предполагам, че пътищата след опцията "разширяване" са изключени, въпреки че вече опитах други структури, които също не са работили.
Отговори:
2 за отговор № 1защото sass.dev.src
равно на src: "style.scss"
, Задачата за гледане е конфигурирана с files: ["<%= sass.dev.src %>"]
ще се опита да гледа ./style.scss
и не ./sass/style.scss
.
Задачата за гледане има a cwd
опция (options:{cwd:"./sass"}
), но вероятно е по-лесно да го настроите да гледа files: ["sass/*.scss"]
вместо.