J'utilise Lion 10.9.2 avec nodejs v0.10.26
Je veux installer une compilation automatisée sur des fichiers sass et un rechargement en direct avec grunt, rien de compliqué mais ...
Lorsque vous exécutez grunt watch
J'obtiens l'erreur suivante
(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
voici le 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' ]);
};
et voici le package.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"
}
}
J'ai finalement trouvé un problème similaire avec le SASS. J'utilisais
grunt.registerTask('sass', [ 'sass']);
Le truc était que Grunt ne semble pas aimer la répétition des noms. Quand je passe à
grunt.registerTask('styles', [ 'sass']);
Tout a fonctionné comme il se doit.
Juste eu ce problème. Résolu en supprimant grunt.registerTask('watch', [ 'watch']);
Je viens de corriger une erreur similaire "Processus récursif.nextTick détecté" provoquée par la commande: serveur grunt
La solution? Utilisez Sudo grunt serve à la place
vous pourriez essayer celui-ci, il a résolu le problème pour moi, en travaillant avec Yeoman 1.3.3 et Ubuntu 14.04 erreur de surveillance Grunt - En attente ... Erreur fatale: regarder ENOSPC
Solution alternative: vérifiez votre montre pour un argument de fichier vide.
Voici un extrait de mon gruntfile
watch: {
all: {
options:{
livereload: true
},
files: ['src/scss/*.scss', 'src/foo.html',, 'src/bar.html'],
tasks: ['default']
}
}
Dans mon cas, je pourrais recréer l'erreur de l'affiche originale à la demande avec l'argument vide ci-dessus.
J'avais une erreur en essayant même d'installer Grunt. L'exécution de npm dedupe a résolu mon problème comme suit: Erreur de surveillance Grunt - En attente ... Erreur fatale: regardez ENOSPC