Webpack Yate Utils
Набор сборочных утилит, для работы с шаблонизатором yate
YateLoader
Собирает переданные в него yate модули. Сам резолвит все импорты.
Если где-то в сделали:
// in modulename2
import modulename1
то не забудьте настроить сборку для modulename1
, иначе modulename2
никогда не соберется и не выкинет об этом ошибку.
Звучит страшно, но на самом деле все логично.
Пример подключения в конфиге:
test: /\.yate$/ use: loader: 'webpack-yate-utils/yate-loader' ...
YateLoaderPlugin
Позволяет правильно перекомпилировать yate файлы в watch режиме.
Пример подключения:
const yate = ;... plugins: dumpExports: true ...
Параметры
- context - работает по принципу настройки
context
в webpack. Может быть использован в дополнительных плагинах. По умолчанию берется из конфига вебпака. - publicPath - работает по принципу настройки
publicPath
в webpack. Может быть использован в дополнительных плагинах. По умолчанию берется из конфига вебпака. - dumpExports - указывает, сохранять ли внешние переменные модуля в файл
<module>.yate.obj
. По умолчаниюfalse
.
События
На этапе компиляции добавлены кастомные события для yate.
Все события начинаются с префиксов yate-module
и yate-module-before
.
parse
, include
, import
, itemize
, parents
, scopes
, declarations
, actions
, list
, validate
,
types
, defs
, export
, prepare
, transform
, result
Пример
compiler;
YateFreezeLinksPlugin
Альтернатива для borschik-link
.
Ищет в yate шаблонах использование конструкции
frozen-link('./filename.ext')
и добавляет этот файл в дерево сборки webpack. Саму конструкцию заменяет на результат добавления.
Нужно как минимум прописать file-loader
для png, чтобы можно было загружать png через frozen-link
.
Пример подключения:
const yate = ;... module: rules: test: /\.yate$/ use: loader: 'webpack-yate-utils/yate-loader' test: /\./ use: loader: 'file-loader' options: name: '[hash]-[name].[ext]' plugins: pathResolveMode: 'module' ...
Параметры
- pathResolveMode - способ разрешения ссылок на файлы.
module
- относительно корня текущего yate модуля.file
- относительно файла в котором вызванfrozen-link
.root
(default) - относительно YateLoaderPlugin.base, который по умолчанию равен webpack.context.