Переводы в nunjucks через nunjucks-webpack-loader - PullRequest
1 голос
/ 25 сентября 2019

Я пытаюсь создать свои ресурсы внешнего интерфейса, по одному на перевод.Это генерируется с использованием webpack.Однако, как я могу использовать context для получения переводов в мои шаблоны nunjuck?

webpack.config.js

        {
          test: /\.(nunjucks)$/i,
          use: [
            "html-loader",
            {
              loader: "nunjucks-webpack-loader",
              options: {
                context: {
                  lang: 'en'
                },
                alias: {
                  demo: path.resolve(__dirname, "src/partials/demo"),
                  blog: path.resolve(__dirname, "src/partials/blog"),
                  blocks: path.resolve(__dirname, "src/partials/blocks"),
                  components: path.resolve(__dirname, "src/partials/components"),

                  layout: path.resolve(__dirname, "src/partials/layout"),
                  heading: path.resolve(__dirname, "src/partials/heading"),
                  sections: path.resolve(__dirname, "src/partials/sections")
                }
              }
            }
          ]
        }

Рендеринг:

module.exports = ({ IS_DEV }) => {
  let allPages = [];

  searchInFolders.forEach(folder => {
    const paths = glob.sync(`${__dirname}/src${folder}*${defaultExt}`);

    allPages = allPages.concat(
      paths.map(template => {
        const filename = getFileName(template);
        const page = `${folder.slice(1)}${filename}.html`;

        return new HtmlWebpackPlugin({
          template: template,
          inject: true,
          favicon: path.resolve(__dirname, "src/public/favicon.ico"),
          minify: !IS_DEV && {
            collapseWhitespace: true,
            preserveLineBreaks: true,
            removeComments: true
          },
          filename: page,
          hash: true
        });
      })
    );
  });

  return allPages;
};

И мойHTML-код:

Language is: {{ __webpack__.lang.hello }}

Шаблоны nunjuck отображаются нормально, но я получу: Language is: {{ __webpack__.lang.hello }} вместо Language is: en.

...