grunt watch — компилирует sass, но только после окончания просмотра

Не уверен, что это ошибка или неправильная конфигурация с моей стороны, но при использовании grunt для просмотра некоторых файлов sass он определенно просматривает файлы, но только компилирует sass и обновляет конечный файл только при выходе из наблюдателя.

вот мой узел часов:

watch: {
    sass : {
        files: [sassPath.scss],
        tasks: ['sass']
    }
}

Например, это то, что происходит в настоящее время:

 1. I do `grunt watch` on the command line
2. Start editing sass files
3. Command line notifies me that the change has been detected and it runs the sass task successfully
4. I manually look at the destination css file - no changes
5. ctrl + c to close the watcher while looking in the destination css file - i can see it updated as soon as the watch closes

Мне бы очень хотелось, чтобы файл css назначения обновлялся, как только sass компилируется


person Marty Wallace    schedule 04.04.2014    source источник
comment
Я не вижу ничего плохого в вашей grunt watch:sass задаче. Вы пробовали запускать его самостоятельно? Это не обычное поведение для задачи watch, хотя мне нужно было бы поближе взглянуть на вашу Gruntfile.js, чтобы увидеть, не вызывает ли что-то еще проблемы. Попробуйте обновить локальный grunt и соответствующие зависимости (watch и sass).   -  person Wallace Sidhrée    schedule 05.04.2014


Ответы (1)


Да, похоже, в одном обновлении есть ошибка, из-за которой ваш gruntfile.js не работает, у меня была такая же проблема, и через день после обновления через композитор файл просто перестал работать, мне пришлось изменить часть часов, чтобы она выглядела примерно так это и исправлено:

        // Watch for files and folder changes
    watch: {
        sass: {
            files: ['<%= options.sass.base %>/{,*/}*.{scss,sass}'],
            tasks: ['sass']
        },
        livereload: {
            options: {
                livereload: 35729,
            },
            files: [
                'app/views/*/*.php',
                '{tmp/<%= options.css.base %>,<%= options.css.base %>}/{,*/}*.css',
                '{tmp/<%= options.js.base %>,<%= options.js.base %>}/{,*/}*.js',
                '{tmp/<%= options.sass.base %>,<%= options.sass.base %>}/{,*/}*.css',
            ]
        },
        options: {
            livereload: true
        },
        files: '<%= options.watch.files %>',
        tasks: ['default', 'notify:watch']
    }
person Neo    schedule 04.04.2014
comment
В его конфигурации нет ничего плохого, что касается его описания и кода. Но невозможно узнать, все ли в порядке, не глядя на его Gruntfile.js. Кто-то, конечно, может оценить ваш подход к задаче watch, но я не думаю, что этот ответ добавляет большую ценность проблеме, которую он описывает (как это было на момент написания этой статьи)... Потому что вы в основном делаете то же самое. он сделал, с прибамбасами и свистками. :) Мир. - person Wallace Sidhrée; 05.04.2014
comment
@WallaceSidhrée да, эти навороты — временное исправление ошибки, о которой я уже сообщал на github. Я должен был упомянуть об этом! - person Neo; 25.04.2014