2015-02-16 3 views
0

Фон:Yeoman + Grunt Disable Uglify

Я работаю над расширением хром. Я использовал yoman generator. Оно работало завораживающе. После того как я развернул расширение, мне нужно было отладить несколько проблем.

Проблема:

Код обезображенный. Я не могу установить точки останова. Я с трудом могу это прочитать. Он также оптимизирован. Это затрудняет чтение. Я хотел бы сказать, что Grunt пропустил углубление кода.

Покушение Решения:

  1. Я пытался закомментируйте уродовать задачу в Grunt файле. Если я это сделаю, не только не будет выполняться uglify, но большинство сценариев не копируются в каталог «dist».
  2. Я могу развернуть приложение из каталога «app». Если я это сделаю, мой написанный человеком код будет загружен, а не значения «dist». Хотя это работает, я хочу больше узнать о внутренней работе Grunt. Кажется вероятным, что существует некоторый механизм, посредством которого углефикация может быть отключена при сохранении копирования.

ответ

1

Это задача usemin, которая поставляет цели в задачу uglify. Когда вы комментируете задачу uglify, usemin не может завершить свой поток (по умолчанию concat и uglify), и скрипты никогда не копируются.

Итак, вы должны настроить поток в параметрах useminPrepare. Как это:

[...] 
useminPrepare: { 
    options: { 
     stripBanners: true, 
     dest: '<%= config.dist %>', 
     flow: { 
      steps: { 
       js: ['concat'], css: ['concat', 'cssmin'] 
      }, 
      post: {} 
     } 
    }, 
[...] 

Таким образом, вы можете удалить уродовать задачу из последовательности сборки (вы должны, как это будет жалоба, что имеет никаких целей и не).

Документация здесь: https://github.com/yeoman/grunt-usemin#flow

+0

Когда я делаю это, код не uglyfied. Поэтому мы идем в правильном направлении. Возникает проблема в том, что некоторые из сценариев объединяются в фон. Мне нужны разные сценарии. Есть ли способ сделать это? Если оставить конфигурацию по умолчанию, сценарии выживут, но уродливые. – Virmundi

+1

Вы также можете попытаться удалить шаг «concat», но это может помешать предложению задачи usemin. Для этого просто удалите блоки из ваших файлов и обязательно скопируйте скрипты в процессе сборки. Но, возможно, вам лучше было отлаживать в режиме dev вместо развертывания расширения. В chrome: // extensions/вы можете включить «Режим разработчика» и «Загрузите распакованное расширение ...». –