хрюкающий бросок " рекурсивный процесс.nextTick обнаружен"
Я запускаю Lion 10.9.2 с nodejs v0.10. 26
Я хочу настроить автоматическую компиляцию на файлы sass и живую перезагрузку с grunt, ничего сложного, но...
при работе grunt watch
Я получаю следующую ошибку
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
util.js:35
var str = String(f).replace(formatRegExp, function(x) {
^
RangeError: Maximum call stack size exceeded
вот Gruntfile.js
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
sass: {
dist: {
files: {
'assets/css/styles.css': 'assets/sass/styles.scss'
}
}
},
watch: {
all: {
files: 'index.html', // Change this if you are not watching index.html
options: {
livereload: true // Set livereload to trigger a reload upon change
}
},
css: {
files: [ 'assets/sass/**/*.scss' ],
tasks: [ 'sass' ],
options: {
spawn: false
}
},
options: {
livereload: true // Set livereload to trigger a reload upon change
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.registerTask('watch', [ 'watch']);
grunt.registerTask('default', [ 'sass', 'watch' ]);
};
и вот этот пакет.json
{
"name": "application",
"version": "0.0.1",
"private": true,
"devDependencies": {
"grunt": "~0.4.2",
"grunt-contrib-watch": "~0.5.3",
"grunt-contrib-sass": "~0.7.3"
}
}
6 ответов:
Я, наконец, понял, аналогичная проблема у меня была с Сасс. Я использовал
grunt.registerTask('sass', [ 'sass']);
трюк был в том, что хрюканье, похоже, не нравится повторение имен. Когда я переключаюсь на
grunt.registerTask('styles', [ 'sass']);
все работало как надо.
Я только что исправил аналогичную ошибку " рекурсивный процесс.nextTick detected " вызывается командой: grunt server
решение? Использовать sudo хрюкать вместо того, чтобы служить
вы можете попробовать этот, он исправил проблему для меня, работая с Yeoman 1.3.3 и Ubuntu 14.04 Grunt watch error-ожидание...Фатальная ошибка: смотреть ENOSPC
альтернативное решение: проверьте ваши часы для пустого аргумента файла.
вот отрывок из моего
gruntfile
watch: { all: { options:{ livereload: true }, files: ['src/scss/*.scss', 'src/foo.html',, 'src/bar.html'], tasks: ['default'] } }
в моем случае, я мог бы воссоздать ошибку оригинальный плакат по требованию с пустым аргументом.
Я получал ошибку даже при попытке установить grunt. Запуск npm dedupe решил мою проблему, как ответил Здесь:Grunt watch error-ожидание...Фатальная ошибка: смотреть ENOSPC