我正在使用webpack。我有两个项目,一个是前端项目,一个是后端项目。后端也是使用javascript。所以我使用webpack来打包后端。
打包后的后端文件如下:
打包后的后端文件如下:
main.js
test1.js
test2.js
test1~test2.js
test1
、test2
和test1~test2.js
文件是按需加载的分块文件。
现在,我正在输入前端网站的URL(URL为front-end.website.com/test1
),当这种情况发生时,我立即下载main.js
和test1.js
。之后,有一个按钮,我应该点击它,然后axios
应该发出请求来获取test1~test2.js
。正如你所看到的并且我所说的那样,test1~test2.js
应该被懒加载,这也是发生的事情,但是...
问题:当请求test1~test2.js
时,请求并没有发送到后端源,而是发送到前端源,这导致该文件无法加载,因为该文件不存在于前端上。看起来在main.js
中,有一个懒加载的代码用于test1~test2.js
,但它没有完整的源路径,当前端尝试加载它时,它认为它应该从自身加载。
我该如何解决这个问题?
解决方法(但我不喜欢这种方法):我尝试在后端的webpack配置中使用publicPath,例如:https://back-end.website.com,但这会导致当请求被发送到后端时,无论是哪个文件,请求的实际URL变成了https://back-end.website.com/http://back-end.website.com/file(类似于这样)。