1

J'ai besoin de sauter la concat sur la construction grunt, cause qu'elle me cause beaucoup d'erreur, et les conflits dans mon projet angulaire.Comment sauter la concat dans la construction grunt

J'ai essayé sur mon 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' 
    ]); 

Mais encore me donner une sortie de scripts concat enlaidir.

+0

Pouvez-vous s'il vous plaît partager également les erreurs que vous obtenez? Uglify ne devrait pas échouer sauf dans le cas où quelque chose ne va pas. – caisah

+0

Je n'ai pas eu d'erreur, mais je n'ai pas eu ce que je voulais. J'ai besoin d'avoir un script minifié séparé, au lieu de cela je reçois un script concaté et minifié – Maloc

Répondre

2

Créez votre propre tâche qui exécutera ngAnnotate puis uglify et cssmin pour réduire les css.

Vous pouvez également spécifier vos fichiers js que vous souhaitez enlaidir et annoter sur le grunt.initConfig:

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

Il est une version inférieure et plus statique de la construction de grognement, mais ce serait faire un minification et annotation de votre projet.