2016-09-28 4 views
7

мой Package.bundle читаетКак исключить Webpack из пакетирования .spec.js файлов

var reqContext = require.context('./', true, /\.js$/); 

reqContext.keys().map(reqContext); 

Который в основном включает в себя все .js файлы.

Я хочу, чтобы выражение исключало любые файлы ***. Spec.js. Любое regexp здесь, чтобы исключить файлы .spec.js?

ответ

14

С /\.js$/ позволяет все .js файлы (как это в основном соответствует .js в конце строки), и вам необходимо, чтобы все .js файлы без каких-либо .spec перед ними, вам необходимо регулярное выражение с отрицательного предпросмотра:

/^(?!.*\.spec\.js$).*\.js$/ 

См this regex demo

Детали:

  • ^ - начало строки
  • (?!.*\.spec\.js$) - линия не может заканчиваться .spec.js, если он делает, ничего не будет происходить
  • .* - любые 0+, кроме LineBreak символов символы
  • \.js - .js последовательность
  • $ - конец строки.
Смежные вопросы