Go to file
Valentin Silytuin d078fe51b0 v2.0.1 2022-02-01 20:43:10 +04:00
.yarn v2.0.0 2022-02-01 20:07:08 +04:00
.editorconfig v2.0.0 2022-02-01 20:07:08 +04:00
.gitignore v2.0.0 2022-02-01 20:07:08 +04:00
.npmignore Из публикуемого пакета убраны лишние файлы 2022-02-01 20:42:12 +04:00
.nvmrc v2.0.0 2022-02-01 20:07:08 +04:00
.prettierrc v2.0.0 2022-02-01 20:07:08 +04:00
.yarnrc.yml v2.0.0 2022-02-01 20:07:08 +04:00
README.md v2.0.0 2022-02-01 20:07:08 +04:00
index.js v2.0.0 2022-02-01 20:07:08 +04:00
package.json v2.0.1 2022-02-01 20:43:10 +04:00
yarn.lock v2.0.0 2022-02-01 20:07:08 +04:00

README.md

babel-plugin-nunjucks

Плагин для babel-loader, позволяющий использовать шаблонизатор Nunjucks внутри JS-файлов.

Установка

yarn add -D @advdominion/babel-plugin-nunjucks

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

Код для преобразования должен находиться в переменных, имена которых указываются в массиве varNames, и быть шаблонным литералом. Пример:

const nunjucksTemplate = `
    {% from "./item.njk" import item as item %}

    <div class="items">
		{% for n in range(0, 10) %}
			{{item()}}
		{% endfor %}
    </div>
`;

Пример конфигурации Webpack:

[
    {
        test: /\.js$/,
        exclude: [/mocks\.js$/],
        use: [
            {
                loader: 'babel-loader',
                options: {
                    cacheDirectory: true,
                },
            },
        ],
    },
    {
        test: /mocks\.js$/,
        use: [
            {
                loader: 'babel-loader',
                options: {
                    compact: false,
                    plugins: [
                        [
                            '@advdominion/babel-plugin-nunjucks',
                            {
                                templatesFolder: 'src/templates/',
                                varNames: ['nunjucksTemplate'],
                            },
                        ],
                    ],
                },
            },
        ],
    },
];

Опции

  • templatesFolder - обязательный параметр, путь до папки с файлами шаблонов.
  • varNames - Массив, обязательный параметр. Имена переменных для преобразования кода шаблонизатора.

Важно: Параметр cacheDirectory в опциях babel-loader должен быть отключён.