Используйте html-webpack-externals-plugin для файлов, не входящих в node_modules

Кто-нибудь знает, есть ли способ заставить этот плагин ( https://github.com/mmiller42/html-webpack-externals-plugin) работать для моих собственных файлов, которые не находятся в node_modules?

Например: у меня есть некоторые файлы данных конфигурации в app/js/config/. Я хочу, чтобы эти файлы были исключены из всех комплектов, скопированы в выходную (dist) папку и прочитаны оттуда во время выполнения, что и является именно этим плагином делает, но для файлов в node_modules.

Мне удалось заставить его скопировать тестовый файл и вставить тег script в index.html, но содержимое файла test.js все еще связано и считывается оттуда. Вот мой экспериментальный конфиг:

new HtmlWebpackExternalsPlugin({
  externals: [
    {
      module: 'test',
      entry: '../../js/config/test.js',
      global: 'test',
    },
  ],
})

Любая помощь будет оценена!

1 ответ

Встречаюсь с той же проблемой. Когда я использую плагин html-webpack-externals-plugin, он всегда находит библиотеку в node_modulesпапка. И я знаю, что по этой ссылке он устарел .

К счастью, он рекомендует новую библиотеку html-webpack-tags-pluginкоторый мог бы идеально решить эту проблему. Ниже представлена ​​моя ключевая конфигурация.

      plugins: [
    new CopyWebpackPlugin([
      { from: "./src/Config.js", to: "." },
    ]),
    new HtmlWebpackPlugin({
      template: path.join(__dirname, "src/index.html"),
    }),
    new HtmlWebpackTagsPlugin({
      tags: [{ path: "Config.js", type: "js" }],
      append: false,
    }),
  ],
Другие вопросы по тегам