Макрос Nunjucks не найден, если во вложенных папках

У меня есть следующая структура:

шаблоны
- base.njk

страницы
- index.njk

компоненты // мои макросы
кнопка
- button.njk
- button.scss

Поэтому, когда я делаю импорт моего макроса на моей странице: {% import 'button/button.njk' as btn %}
Это не работает, он загружает кнопку, потому что не говорит, что не может найти шаблон, но когда я пытаюсь вызвать свой макрос:{{ btn() }}
Выдает ошибку, говорящую:

Невозможно вызвать "btn", который не является функцией

но когда его нет в папке 'button', он работает.

Я просто хочу знать, есть ли способ сохранить эту структуру и заставить это работать?

Спасибо

2 ответа

Пытаться

{{ btn.your-macros-name() }}

или же

{% from 'button/button.njk' import your-macros-name as btn %}
{{ btn() }}

Вы должны записать свой код следующим образом: вы можете импортировать его в любой файл.njk или.html, кроме button.njk

{% import "button.njk" как btn %}

Другие вопросы по тегам