Додавання користувацьких завантажувачів та плагінів

Дата оновлення перекладу 2024-05-27

Додавання користувацьких завантажувачів та плагінів

Додавання користувацьких завантажувачів

Encore одразу ж постачається з різними завантажувачами, але якщо є конкретний завантажувач, який ви хочете використати, або який на даний момент не підтримується, ви можете просто додати власний завантажувач через функцію addLoader. addLoader приймає будь-яку валідну конфігурацію правил webpack.

Якщо, наприклад, ви хочете додати handlebars-loader, викличте addLoader у вашій конфігурації завантажувача.

1
2
3
4
Encore
    // ...
    .addLoader({ test: /\.handlebars$/, loader: 'handlebars-loader' })
;

Так як конфігурація завантажувача приймає будь-який валідний обʼєкт правил Webpack, ви можете передати завантажувачу будь-яку додаткову інформацію, яка вам потрібна.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Encore
    // ...
    .addLoader({
        test: /\.handlebars$/,
        loader: 'handlebars-loader',
        options: {
            helperDirs: [
                __dirname + '/helpers1',
                __dirname + '/helpers2',
            ],
            partialDirs: [
                path.join(__dirname, 'templates', 'partials')
            ]
        }
    })
;

Додавання користувацьких плагінів

Encore використовує багато різних плагінів внутрішньо. Але ви можете додати ваші власні за допомогою методу addPlugin(). Наприклад, якщо ви використовуєте Moment.js, ви можете захотіти використати IgnorePlugin (див. moment/moment#2373):

1
2
3
4
5
6
7
8
9
10
11
// webpack.config.js
+ var webpack = require('webpack');

  Encore
      // ...

+     .addPlugin(new webpack.IgnorePlugin({
+         resourceRegExp: /^\.\/locale$/,
+         contextRegExp: /moment$/,
+     }))
  ;