Webpack - 外部 JS/JSON 文件作为依赖项

Tec*_*emn 5 ecmascript-6 webpack

朋友们,我试图将外部文件保留在 Webpack 捆绑包之外,但仍保留为依赖项 - 在本例中为设置文件。我尝试了以下几种变体 -

externals: {
  'Settings': JSON.stringify(require('./settings.json'))
},
Run Code Online (Sandbox Code Playgroud)

...但 Webpack 继续将其包含在捆绑包中。我在文档中找到的唯一示例是常见的预设(例如 jQuery),没有提到本地文件而是外部文件。帮助?谢谢!

Tec*_*emn 2

因此,经过大量研究,在编写此答案时,获取外部文件的唯一方法是在某种程度上忽略 Webpack 并简单地向 index.html 添加另一个脚本调用。这就是我最终所做的 -

<body>
    <div id="whatever-app-id"></div>
    <script type="text/javascript" src="settings.js"></script>
    <script type="text/javascript" src="app.js" defer></script>
</body>
Run Code Online (Sandbox Code Playgroud)

为了更好地衡量,您还可以参考 settings.js 文件中声明的全局对象添加 @gmaliar 的答案中提到的 webpack 外部组件。然而,这有点多余,因为无论如何该对象都是全局的。

希望它对任何人都有帮助。