2017-05-23 5 views
0

Mon fichier grunt fonctionnait comme prévu jusqu'à ce que j'ajoute dans postcss et autprefixer. J'ai suivi le guide au https://www.npmjs.com/package/autoprefixer. Cependant, je reçois le tant redouté:Avertissement: la tâche "par défaut" n'a pas été trouvée. Utilisez --force pour continuer

Loading "gruntfile.js" tasks...ERROR 
>> TypeError: undefined is not a function 
Warning: Task "default" not found. Use --force to continue. 

Mon gruntfile ressemble à ceci:

module.exports = function(grunt) { 
// Project configuration. 
grunt.initConfig({ 
pkg: grunt.file.readJSON('package.json'), 
uglify: { 
    dist: { 
    files: { 
     "js/wd.min.js" : [ 
      "node_modules/foundation-sites/dist/js/plugins/foundation.core.min.js", 
      "node_modules/foundation-sites/dist/js/plugins/foundation.util.mediaQuery.js", 
      "node_modules/foundation-sites/dist/js/plugins/foundation.util.timerAndImageLoader.js", 
      "node_modules/foundation-sites/dist/js/plugins/foundation.equalizer.min.js", 
      "js/wd.js" 
     ] 
    }, 
    options: { 
     beautify:true, 
     compress:false 
    } 
    } 
}, 
watch: { 
    dist: { 
     files: [ 
      /* JS locations */ 
      "js/wd.js", 

      /* SCSS locations */ 
      "style/**/*.scss", 
     ], 
     tasks: [ 
      "uglify", 
      "sass_imports", 
      "sass", 
      "postcss" 
     ] 
    } 
}, 
sass: { 
    options: { 
     loadPath: [ 
      'node_modules/foundation-sites/scss', 
      require("bourbon").includePaths 
     ], 
    }, 
    dist: { 
     files: { 
      "style/style.css" : [ 
       "style/style.scss", 
      ], 
     }, 
     options: { 
      require: "sass-css-importer" 
     } 
    } 
}, 
sass_imports: { 
    dist: { 
     src: [ 
      "style/style.scss" 
     ], 
     dest: "all.scss" 
    } 
}, 
postcss: { 
    options: { 
     map: true, 
     processors: [ 
      require('autoprefixer')({browsers: 'last 2 versions'}) 
     ] 
    }, 
    dist: { 
     src: "style/style.css" 
    } 
} 
}); 

grunt.loadNpmTasks('grunt-contrib-uglify'); 
grunt.loadNpmTasks('grunt-contrib-sass'); 
grunt.loadNpmTasks('grunt-contrib-watch'); 
grunt.loadNpmTasks('grunt-scss-imports'); 
grunt.loadNpmTasks('grunt-postcss'); 

//load watch plugin 

// Default task(s). 
grunt.registerTask('default', ['watch']); 
}; 

Toutes les solutions je suis venu à travers les référencent une faute de frappe somwhere mais je ne peux pas le voir. Toute aide est appréciée!

Répondre

0

non définie est pas une fonction suggère que soit

require('autoprefixer') ne retourne pas une fonction - vérifier si elle est correctement installé

OU

grunt.initConfig n'est pas une fonction. Lorsque vous exécutez ce code passez-vous grunt? par exemple. require('gruntfile.js')(grunt)

Je pense que normalement vous n'enveloppez pas votre code gruntfile dans une fonction - la getting started example ne semble pas, déroulez peut-être si vous êtes en cours d'exécution grunt de la ligne de commande, plutôt que de charger dans cette configuration et le passage grogner dedans.