Ошибка “Warning: Task ”uglify“ not found” при попытке выполнить grunt

313
23 августа 2017, 19:37

Настройки из 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'
  ]);
};

uglify и imagemin я уже установила

Работаю с грантом всего второй день, поэтому, возможно, там просто какая-то синтаксическая ошибка, но я её в упор не вижу. Буду признательна, если кто нибудь мне поможет(

Answer 1

По идее твой package.json должен выглядеть как-то так:

{
  "author": "MedvedevDev",
  "name": "dev",
  "version": "0.0.1",
  "devDependencies": {
    "grunt": "^1.0.1",
    "grunt-browser-sync": "^2.2.0",
    "grunt-contrib-imagemin": "^2.0.1",
    "grunt-contrib-uglify": "^3.0.1",
    "grunt-contrib-watch": ">=0.6.0",
    "grunt-svgstore": "^1.0.0",
    "load-grunt-tasks": "^3.5.2"
  }
}

Но скорее всего там как минимум нет

"grunt-contrib-uglify": "^3.0.1",

Если это так, то выполни в консоли:

npm install grunt-contrib-uglify -D
READ ALSO
Регулярка для JSLint

Регулярка для JSLint

Очередная беда с регуляркой, нужно извлечь всю строку между

200
Нужен совет опытных веб разработчиков [требует правки]

Нужен совет опытных веб разработчиков [требует правки]

Здравствуйте, изучил основы javascript, html, cssДалее попал в тупик так как что то сложное сделать у меня не получается, а как продолжать обучение...

316