在我们公司,我们有一个库,它分为多个模块。这些模块位于单独的文件中,并且每个模块都依赖于其他模块。每个模块都有一个定义函数,它注册它供其他模块以后使用,也可以在其定义函数中要求其他模块。要求类似于 angular:
modules.require(['authentication', 'data', 'http'], module => console.log('Here is my module: ', module).
该库有一个 Synchronizer 类,它基于每个模块中的这个需求,处理所需模块的导入和提供。当一个模块还没有被需要时,它会创建一个<script>
标签,将它的 src 设置为所需的模块文件并将其附加到正文中。
这是问题所在,因为如果我只是导入我的库的主文件并尝试需要一些模块,它会附加一个<script>
标签,但文件的路径不正确,因为它全部被 webpack 捆绑在一起。
webpack 中有没有办法声明这个文件夹(带有插件的文件夹)应该保持原样,以便我可以向这个文件夹中的各个文件发出请求?
我曾尝试使用“import”语句、“require”,也尝试将库更改为 npm 包,但我实际上并没有被允许更改库,因为它已经以这种格式进行了测试。所以保持图书馆原样是最好的。
例如,如果我将此库放入:
./static/js/mylibrary
然后我们的库可以为带有 srcmodules.require(['data'], onSuccess)
的<script>
标签生成,例如:
./static/js/mylibrary/data.js
我可以设置 webpack 以便文件保留在那里吗?开发中?在生产中?
我正在使用 vue-cli 创建的项目
正如我在评论中提到的,简单地将它放在 webpack 中的“public”目录中,对开发和生产都起到了作用。不知道为什么我之前没有尝试过这个。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句