2017-08-22 69 views
0

這是我gruntfile.js:不能找到錯誤的解決方案「警告:任務‘醜化’未找到」

module.exports = function(grunt) { 

    require('load-grunt-tasks')(grunt); 

    grunt.initConfig({ 

    uglify: { 
     start: { 
     files: { 
      'js/script.min.js': ['js/script.js'], 
     } 
     } 
    }, 

    imagemin: { 
     build: { 
     options: { 
      optimizationLevel: 3 
     }, 
     files: [{ 
      expand: true, 
      src: ['img/sprite_svg/*.svg'], 
     }] 
     } 
    }, 

    svgstore: { 
     options: { 
     includeTitleElement: false, 
     svg: { 
      style: 'display:none', 
     }, 
     cleanup: [ 
      'fill', 
     ], 
     }, 
     default : { 
     files: { 
      'img/sprite.svg': ['img/sprite_svg/*.svg'], 
     }, 
     }, 
    }, 

    watch: { 
     livereload: { 
     options: { livereload: true }, 
     files: ['build/**/*'], 
     }, 
     scripts: { 
     files: ['js/script.js'], 
     tasks: ['js'], 
     options: { 
      spawn: false 
     }, 
     }, 
     images: { 
     files: [ 
      'img/sprite_svg/*.svg' 
     ], 
     tasks: ['img'], 
     options: { 
      spawn: false 
     }, 
     }, 
     html: { 
     files: ['./index.html'], 
     // tasks: ['html'], 
     options: { 
      spawn: false 
     }, 
     }, 
    }, 

    browserSync: { 
     dev: { 
     bsFiles: { 
      src : [ 
      'img/sprite.svg', 
      './index.html', 
      ] 
     }, 
     options: { 
      watchTask: true, 
      server: { 
      baseDir: "./", 
      }, 
      startPath: "index.html", 
      ghostMode: { 
      clicks: true, 
      forms: true, 
      scroll: false 
      } 
     } 
     } 
    } 

    }); 

    grunt.loadNpmTasks('grunt-contrib-uglify'); 
    grunt.loadNpmTasks('grunt-contrib-imagemin'); 

    grunt.registerTask('default', [ 
    'js', 
    'img', 
    'browserSync', 
    'watch' 
    ]); 

    grunt.registerTask('js', [ 
    'uglify' 
    ]); 

    grunt.registerTask('img', [ 
    'imagemin', 
    'svgstore' 
    ]); 

}; 

我已經安裝醜化和imagemin NPM包,但我仍然gеt錯誤: 警告:任務「uglify」未找到「

這是工作,直到我加入svgstore,我認爲這可能是一個語法錯誤。但這是我第一次使用這個,我根本不知道什麼是導致這個問題。任何幫助將不勝感激。

+0

當你刪除'svgstore'對象,它運行良好嗎? –

回答

1

什麼是在您的package.json文件中?

「load-grunt-tasks」從package.json中的「dependencies」和「devDependencies」中讀取,因此不必調用「grunt.loadNpmTasks」。

另外,你應該安裝「grunt-contrib-uglify」而不是「uglify」。

+0

是的,「npm install grunt-contrib-uglify -D」幫助。非常感謝! – prostyash

0

在兩個陣列中的最後一項之後有額外的逗號

grunt.registerTask('js', [ 
    'uglify', // <-- remove this comma 
]); 

grunt.registerTask('img', [ 
    'imagemin', 
    'svgstore', // <-- remove this comma too 
]); 
+0

謝謝,但它沒有幫助:( – prostyash

相關問題