react-starter-kit

Форк
0
/
webpack.config.js 
47 строк · 1.1 Кб
1
const path = require('path');
2
const {merge} = require('webpack-merge');
3
const asset = require('./config/asset');
4
const base = require('./config/base');
5
const html = require('./config/html');
6
const optimization = require('./config/optimization');
7
const script = require('./config/script');
8
const style = require('./config/style');
9
const svg = require('./config/svg');
10

11
/**
12
 * Получить конфигурацию webpack.
13
 * @param env Окружение.
14
 * @param argv Аргументы
15
 * @returns {*} Конфигурация webpack.
16
 */
17
function webpackConfig(env, argv) {
18
  const {mode} = argv;
19
  const root = __dirname;
20
  const options = {
21
    dist: path.join(root, 'www'),
22
    mode,
23
    pages: ['index'],
24
    public: path.join(root, 'public'),
25
    root,
26
    src: 'src',
27
  };
28
  const clean = 'production' === mode ? true : {keep: /\.svg$/u};
29
  const result = {
30
    output: {
31
      clean,
32
    },
33
  };
34

35
  return merge(
36
    asset(options),
37
    base(options),
38
    html(options),
39
    optimization(options),
40
    script(options),
41
    style(options),
42
    svg(options),
43
    result
44
  );
45
}
46

47
module.exports = webpackConfig;
48

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.