2015-07-13 4 views
1

Я не могу понять, почему jQuery игнорируется при выполнении моей задачи Grunt. Вот как это выглядит:Почему Grunt игнорирует jQuery при Uglifying?

module.exports = function (grunt) { 
    // Configuration 
    grunt.initConfig({ 
     pkg: grunt.file.readJSON('package.json'), 
     // Concat 
     concat: { 
      js: { 
       src: [ 
        'js/vendor/jquery.js', 
        'js/app/graph.js', 
       ], 
       dest: 'app/build/js/app.js' 
      } 
     }, 
     // Uglify 
     uglify: { 
      options: { 
       preserveComments: false 
      }, 
      my_target: { 
       files: { 
        'app/build/js/app.min.js': [ 
          'app/build/js/app.js' 
         ] 
       } 
      } 
     }); 
}; 

Когда я проверяю app.js, JQuery является его частью, но не в app.min.js. Поэтому я подозреваю, что что-то не так с частью Uglify.

+1

Вы пробовали очистить перед зданием? Кроме того, есть ли у вас задача, выполняющая их последовательно, чтобы убедиться, что concat запущен до uglify? – Organiccat

+0

Да concat запускается до uglify. 'grunt.registerTask ('default', ['concat', 'uglify']);'. Как очистить? – mapr

+1

https://github.com/gruntjs/grunt-contrib-clean Это не обязательно, jQuery должен быть включен, если это все, что у вас есть. Проведите тест на включенном сайте, чтобы быть уверенным, что он не просто скрывается где-то в укрупненном коде. – Organiccat

ответ

1

github.com/gruntjs/grunt-contrib-clean Это не обязательно, jQuery должен быть включен, если это все, что у вас есть. Проведите тест на включенном сайте, чтобы быть уверенным, что он не просто скрывается где-то в укрупненном коде.

0

Я не думаю, что ваш синтаксис является правильным, пожалуйста, попробуйте вместо этого:

uglify: { 
     development: { 
      options: { 
       preserveComments: false 
      }, 
      files: { 
       'app/build/js/app.min.js': 'app/build/js/app.js' 
      } 
    } 

И называют его: grunt.registerTask('default', ['concat', 'uglify:development']);

+0

К сожалению, это не сработало для меня. Btw Я думаю, что вы пропускаете '}' во второй последней строке. – mapr

0

Не уверен, если это поможет вообще или если даже какие-либо разница между этими двумя, но вы можете попробовать установить свои уродовать конфигурации аналогично вашей CONCAT конфигурации ... например:

module.exports = function (grunt) { 
    // Configuration 
    grunt.initConfig({ 
     pkg: grunt.file.readJSON('package.json'), 
     // Concat 
     concat: { 
      js: { 
       src: [ 
        'js/vendor/jquery.js', 
        'js/app/graph.js', 
       ], 
       dest: 'app/build/js/app.js' 
      } 
     }, 
     // Uglify 
     uglify: { 
      options: { 
       preserveComments: false 
      }, 
      js: { 
       src: ['app/build/js/app.js'], 
       dest: ['app/build/js/app.min.js'] 
      } 
     } 
    }); 
}; 

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

+0

К сожалению, это не сработало, но мне больше нравится этот стиль. – mapr

Смежные вопросы