Go to file
Valentin Silytuin 1f153076fe v3.0.0 2022-12-15 16:35:15 +06: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 v3.0.0 2022-12-15 16:35:15 +06:00
index.js v3.0.0 2022-12-15 16:35:15 +06:00
package.json v3.0.0 2022-12-15 16:35:15 +06: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

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

Используются Tagged templates с тегом njk:

njk`
    {% 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/',
                            },
                        ],
                    ],
                },
            },
        ],
    },
];

Опции

  • templatesFolder - строка, обязательный параметр. Путь до папки с файлами шаблонов
  • globals - массив, необязательный параметр. Глобальные переменные для Nunjucks (например, [{name: "message", value: "Hello, world!"}])

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