IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Uncaught (in promise) ChunkLoadError: Loading chunk 28 failed. -> 正文阅读

[JavaScript知识库]Uncaught (in promise) ChunkLoadError: Loading chunk 28 failed.

今天在使用vue动态加载菜单,报了这个错:

Uncaught (in promise) ChunkLoadError: Loading chunk 28 failed.
(missing: http://localhost:8080/sal/js/28.js)
    at Function.requireEnsure [as e] (app.js:896)
    at Function.fn.e (app.js:177)
    at component (menu.js?2971:47)
    at eval (vue-router.esm.js?8c4f:2144)
    at eval (vue-router.esm.js?8c4f:2171)
    at Array.map (<anonymous>)
    at eval (vue-router.esm.js?8c4f:2171)
    at Array.map (<anonymous>)
    at flatMapComponents (vue-router.esm.js?8c4f:2170)
    at eval (vue-router.esm.js?8c4f:2106)

我的菜单menu.js如下:

import {getRequest} from './api'  
export const initMenu = (router,store) => {  
    if(store.state.routes.length > 0 ){  
        return;
    }
    getRequest("/system/cfg/getMenu").then(data => {  //如果routes为空,则初始化菜单
       if(data){
          
           let fmtRoutes = formatRoutes(data.obj);  //格式化router
           for(var i = 0 ; i < fmtRoutes.length ; i += 1 ){
               const route = fmtRoutes[i];
               router.addRoute(route)
           }
           //router.addRoutes(fmtRoutes); //添加到路由 addRoutes已经废弃
           store.commit('initRoutes',fmtRoutes); //将数据存入vuex
       }
    })

}
export const formatRoutes = (routes) => {
    let fmtRoutes = [];
    routes.forEach((router) => {
        let  {       //将返回的对象封装(定义匿名对象,并将router的值赋给它)
            path,
            component,
            name,
            iconCls,
            children
        } = router;

        if(children && children instanceof Array){
            children = formatRoutes(children);
        }
        let fmRouter = {       //temp对象
            path:path,
            name:name,
            iconCls:iconCls,
            children:children,
            component(resolve){    //等效于component: function conponent(resolve){},通过函数获取值
                if(component.startsWith('Home')){
                    require(['../view/' + component +'.vue'],resolve);
                }else if(component.startsWith('Emp')){
                    require(['../view/emp/' + component +'.vue'],resolve);
                }else if(component.startsWith('Per')){
                    require(['../view/per/' + component +'.vue'],resolve);   
                }else if(component.startsWith('Sal')){
                    require(['../view/sal/' + component +'.vue'],resolve); 
                }else if(component.startsWith('Sta')){
                    require(['../view/sta/' + component +'.vue'],resolve);    
                }else if(component.startsWith('Sys')){
                    require(['../view/sys/' + component +'.vue'],resolve);
                }
                
            }
        }
        fmtRoutes.push(fmRouter);
    });
    return fmtRoutes;
}

当我点击二级菜单员工奖惩的时候报错
在这里插入图片描述
查找原因是因为require加载component方式为懒加载,懒加载的时候用history路由模式,就会出现这种错误。

在router里面注释掉history路由模式,改用默认的hash模式。重新启动项目,程序运行成功。
在这里插入图片描述

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-16 11:11:21  更:2021-07-16 11:12:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 20:10:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码