Как пропустить concat в сборке grunt

Мне нужно пропустить concat в сборке grunt, потому что это вызывает много ошибок и конфликтов в моем угловом проекте.

Я попробовал это на своем Gruntfile.js:

copy: {
      dist: {
        files: [{
          expand: true,
          dot: true,
          cwd: '<%= yeoman.app %>',
          dest: '<%= yeoman.dist %>',
          src: [
            '*.{ico,png,txt}',
            '*.html',
            'images/{,*/}*.{webp}',
            'styles/fonts/{,*/}*.*'
          ]
        }, {
          expand: true,
          cwd: '.tmp/images',
          dest: '<%= yeoman.dist %>/images',
          src: ['generated/*']
        },{
          expand: true,
          cwd: '.tmp/scripts',
          dest: '<%= yeoman.dist %>/scripts',
          src: ['<%= yeoman.app %>/scripts/{,*/}*.js']
        }, {
          expand: true,
          cwd: 'bower_components/bootstrap/dist',
          src: 'fonts/*',
          dest: '<%= yeoman.dist %>'
        }]
      },
      styles: {
        expand: true,
        cwd: '<%= yeoman.app %>/styles',
        dest: '.tmp/styles/',
        src: '{,*/}*.css'
      }
    },

useminPrepare: {
      html: '<%= yeoman.app %>/index.html',
      options: {
        dest: '<%= yeoman.dist %>',
        flow: {
          html: {
            steps: {
              js: ['uglifyjs'],
              css: ['cssmin']
            },
            post: {}
          }
        }
      }
    },

  grunt.registerTask('build', [
    'clean:dist',
    'wiredep',
    'useminPrepare',
    'postcss',
    'ngtemplates',
    'ngAnnotate',
    'copy:dist',
    'cdnify',
    'cssmin',
    'uglify',
    'filerev',
    'usemin',
    'htmlmin'
  ]);

Но все же дайте мне вывод concat scripts uglify.


person Maloc    schedule 06.03.2017    source источник
comment
Не могли бы вы также поделиться ошибками, которые вы получаете? Uglify не должен давать сбоев, за исключением случая, когда что-то пойдет не так.   -  person caisah    schedule 06.03.2017
comment
Я не получил никакой ошибки, но не получил то, что хотел. Мне нужно иметь отдельные минифицированные скрипты, вместо этого я получаю один объединенный и минимизированный скрипт   -  person Maloc    schedule 06.03.2017


Ответы (1)


Создайте свою собственную задачу, которая запустит ngAnnotate, затем uglify и cssmin для минимизации css.

Вы также можете указать свои файлы js, которые вы хотите исказить и аннотировать в grunt.initConfig:

ngAnnotate : {
    dist: {
        files: {
            '.tmp/scripts/MYFILE.min.js' : ['app/scripts/MYFILE.js'],
             /*...*/

Это более низкая версия и более статическая сборка grunt, но она будет выполнять минимизацию и аннотацию вашего проекта.

person SWahi    schedule 06.03.2017