Я использую twig-loader
пакет в приложении Symfony 5, которое запускает Encore (webpack). Пытаясь загрузить шаблон через twig-loader
, я хотел бы расширить функциональность twig.js
(которая используется пакетом загрузчика).
Так что, в принципе, мне нужно это запустить:
// webpack.config.js
Encore.
...
.addLoader({
test: /\.twig$/,
loader: 'twig-loader',
})
...
;
module.exports = Encore.getWebpackConfig();
// somewhere in my js-file
const template = require('./form.html.twig');
template({
'label': 'Some label',
});
// And the twig-file:
<form method="post" action="{{ path('example_route', {'some': 'parameter'}) }}">
<button>{{ label }}</button>
</form>
Ошибка, которую я получаю при рендеринге выше, состоит в том, что path
-функция не известна прутом. js:
Twig.Error {message: "path function does not exist and is not defined in the context", name: "TwigException", type: "TwigException", file: "$resolved:3132…b7d2:form.html.twig"}
Есть ли способ, Я могу расширить функциональность twig.js
во всем мире, чтобы twig-loader
использовал мой расширенный пакет twig.js
?