vue-element-admin icon indicating copy to clipboard operation
vue-element-admin copied to clipboard

点击切换路由的时候,有时候会报错,Error: Loading chunk 1 failed. at HTMLScriptElement.d (bootstrap 7d5ba07478b35f182b62:103)

Open maryrui opened this issue 7 years ago • 74 comments

只有在 打包后的线上环境会出错,用的是addRouter 动态 添加的,万分感谢楼主指导,谢谢 Error: Loading chunk 1 failed. at HTMLScriptElement.d (bootstrap 7d5ba07478b35f182b62:103)

maryrui avatar Jan 30 '18 15:01 maryrui

请提供更详细信息

PanJiaChen avatar Jan 31 '18 01:01 PanJiaChen

image 只有点击路由切换的时候会出现这种错,每次加载报错的区块都不一样(比如:Loading chunk 1 failed.||Loading chunk 2 failed.),前后台两个分开单独项目,都出现了这种问题,后台涉及权限用的是vuex 动态加载路由,前台没有使用。(所有的后端交互都是使用dispatch,会不会有影响)会不会是npm打包问题,毕竟npm经常出错

maryrui avatar Jan 31 '18 02:01 maryrui

image 这是报错的源码区域

maryrui avatar Jan 31 '18 02:01 maryrui

image 楼主自己的项目也会出现这种报错哦

maryrui avatar Jan 31 '18 07:01 maryrui

并不能出现,你出现这个问题很多可能是缓存问题。 @maryrui 能稳定重现么?

PanJiaChen avatar Jan 31 '18 08:01 PanJiaChen

image 重现度还有点高,点了十几次路由就重现

maryrui avatar Feb 01 '18 07:02 maryrui

mac chrome 我试了很久都没能重现

PanJiaChen avatar Feb 01 '18 08:02 PanJiaChen

我也遇到这个问题,然后我去运行楼主的项目,发现在登录的时候出现这个问题的几率非常高

image

我只改了一处config/index.js中build的

assetsPublicPath: './'
改为
assetsPublicPath: '/test/',

打包之后,你在本地运行这个打包后项目,是没有这个问题的

但是把它放在服务器的话,重现几乎90%

网址只有一个域名,所以用test文件夹作为项目区分

luchanan avatar Feb 08 '18 05:02 luchanan

莫名奇妙域名被注入script(非本项目)脚本,导致出错,没有就是好的

luchanan avatar Feb 10 '18 07:02 luchanan

@luchanan 那你解决了吗,动态加载路由确实会出现此问题,楼主的项目用mac的chrome确实不会出现此问题

maryrui avatar Feb 24 '18 04:02 maryrui

image window chrome重现的非常高,换了同事的机子重现度也一样

maryrui avatar Feb 24 '18 04:02 maryrui

@maryrui,你看看你项目head有没有被注入一些奇怪的script,自从没有那被注入的script我就没有重现了,你看看是不是这个导致的,我也是用w10+chrome

luchanan avatar Feb 24 '18 07:02 luchanan

也出现了同样的问题,在打包后的线上环境会出错,点击侧栏卡顿,然后过很久就报错,压面页跳转不出来。有没有什么解决方法? error

seean-chan avatar Mar 02 '18 03:03 seean-chan

也是一样的问题

guohui666 avatar May 24 '18 12:05 guohui666

谢谢花裤衩大佬的指导,我也出现了同样的问题,不使用动态加载有一段时间没出现,现在又出现了, 我两个项目都出现了这个问题,都引入了楼主的模板里面的部分内容,目前还没着找到具体原因, 每次出现都是点击切换路由的时候,每次出现的时候点击的路由都不一样,刷新页面就好了,本地没有过,都是打包到服务器上才有的

这是使用动态挂载路由的时候报错内容

Mr.e._withTask.i._withTask @ vendor.218c81380028c4c91648.js:12 vendor.218c81380028c4c91648.js:6 Error: Loading chunk 14 failed. at HTMLScriptElement.i (manifest.655bda8cfcc9f5f6b104.js:1) s @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 Promise rejected (async) (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 mt @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 d @ vendor.218c81380028c4c91648.js:6 r @ vendor.218c81380028c4c91648.js:6 r @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ vendor.218c81380028c4c91648.js:6 (anonymous) @ app.31c99b36423b330e6a39.js:1 d @ vendor.218c81380028c4c91648.js:6 r @ vendor.218c81380028c4c91648.js:6 r @ vendor.218c81380028c4c91648.js:6 ht @ vendor.218c81380028c4c91648.js:6 _t.confirmTransition @ vendor.218c81380028c4c91648.js:6 _t.transitionTo @ vendor.218c81380028c4c91648.js:6 e.push @ vendor.218c81380028c4c91648.js:6 Pt.push @ vendor.218c81380028c4c91648.js:6 handleNav @ app.31c99b36423b330e6a39.js:1 click @ app.31c99b36423b330e6a39.js:1 e @ vendor.218c81380028c4c91648.js:12

这个是关掉动态挂载之后出现的报错

image

Yezily avatar May 28 '18 08:05 Yezily

TobyHong avatar Jun 02 '18 13:06 TobyHong

所以说现在没答案?

TobyHong avatar Jun 02 '18 13:06 TobyHong

找到答案了,修改webpack.base里面的相关路径

TobyHong avatar Jun 02 '18 14:06 TobyHong

@TobyHong 请问是如何解决的?

wangzz719 avatar Jun 03 '18 12:06 wangzz719

将 config.index.js 下的 assetsPublicPath 修改为: assetsPublicPath: '/', 可以解决问题。

wangzz719 avatar Jun 03 '18 13:06 wangzz719

@wangzz719 可是config.index.js 下面的assetsPublicPath 默认参数就是'/' image

Yezily avatar Jun 04 '18 07:06 Yezily

@Yezily 你改成./ 还有下面引入elementUI有些项目也会出问题,这个也可以排查下。

TobyHong avatar Jun 04 '18 07:06 TobyHong

@TobyHong 好的 我去试试,谢了大兄弟

Yezily avatar Jun 04 '18 07:06 Yezily

按将 @wangzz719 说的,把config.index.js 下的 assetsPublicPath 修改为: assetsPublicPath: '/', 解决了

qyf0310 avatar Jun 08 '18 01:06 qyf0310

@PanJiaChen 打包后放在服务器访问,间隔时间不等再操作,也会偶现Loading chunk 1 failed.||Loading chunk 0 failed,就是使用这个assetsPublicPath: '/',也是一样报错

ChasonHong avatar Jun 12 '18 07:06 ChasonHong

qq 20180614180433 上传到线上后使用公司WIFI第一次访问该文件会被替换所以报错,当我使用4G网络访问却不会报错,应该是运营商网络劫持

ADengrc avatar Jun 14 '18 10:06 ADengrc

router index.js 关闭 history(需要后端支持)

export default new Router({ // mode: 'history', scrollBehavior: () => ({ y: 0 }), routes: constantRouterMap })

sebastianleecn avatar Jul 21 '18 12:07 sebastianleecn

@0maxxam0 has funded $80.00 to this issue. See it on IssueHunt

IssueHuntBot avatar Nov 29 '18 12:11 IssueHuntBot

所以现在还没有解决

@TobyHong 好的 我去试试,谢了大兄弟

'./'这种方法可行吗?

xyzshen avatar Jan 17 '19 02:01 xyzshen

话说你们能稳定重现么。。我最近特意加入了这个报错的监控 报错概率很低。

PanJiaChen avatar Jan 17 '19 02:01 PanJiaChen