2016-08-10 10 views
0

Я настроил Grunt для использования ng-annotate. Я хочу, чтобы аннотировать все .js-файлы в определенном каталоге и копировать их в новый каталог, когда аннотация завершена. Однако полная папка src копируется в новый каталог. Это моя конфигурация:Grunt ng-annotate копии полный каталог

ngAnnotate: { 
     options: { 
      singleQuotes: true 
     }, 
     dist: { 
      files: [{ 
       expand: true, 
       src: ['./src/modules/*.js'], 
       dest: './src/min-safe', 
       ext: '.annotated.js', 
       extDot: 'last' 
      }], 
     } 
    } 

Таким образом, у меня есть мин безопасной папка с SRC/модулями и аннотированными файлами. Как я могу просто скопировать аннотированные файлы в min-safe напрямую?

ответ

2

Варианты Grund's src и dest могут быть путаными, но они согласованы между плагинами (или они, по крайней мере, должны быть). Документация Grunt объясняет how those options can be used работу с файлами.

Ваша проблема в том, что вы не указали опцию cwd, поэтому все совпадения src соответствуют текущему каталогу проекта (по умолчанию cwd). Когда копируется файл src, включены каталоги между cwd и сопоставленным файлом.

Если вы используете эту конфигурацию, он должен делать то, что вы хотите:

ngAnnotate: { 
    options: { 
     singleQuotes: true 
    }, 
    dist: { 
     files: [{ 
      expand: true, 
      cwd: './src/modules', 
      src: ['*.js'], 
      dest: './src/min-safe', 
      ext: '.annotated.js', 
      extDot: 'last' 
     }] 
    } 
} 
+0

Спасибо, я постараюсь его и пусть вы знаете, если он работал. – YourReflection