yuhongqi 20 часов назад
Родитель
Сommit
a946d4887a
2 измененных файлов с 23 добавлено и 5 удалено
  1. 6 1
      src/store/modules/permission.js
  2. 17 4
      src/views/system/user/index.vue

+ 6 - 1
src/store/modules/permission.js

@@ -109,7 +109,12 @@ function filterChildren(childrenMap, lastRouter = false) {
 }
 
 export const loadView = (view) => { // 路由懒加载
-  return (resolve) => require([`@/views/${view}`], resolve)
+  // 开发环境必须用 require:import(`@/views/${view}`) 在本项目 webpack 下会变成 empty context
+  // 生产环境用 import 做分包;组件侧避免同步引入大依赖,防止 require 循环依赖
+  if (process.env.NODE_ENV === 'development') {
+    return (resolve) => require([`@/views/${view}`], resolve)
+  }
+  return () => import(`@/views/${view}`)
 }
 
 export default permission

+ 17 - 4
src/views/system/user/index.vue

@@ -405,10 +405,13 @@ import { treeselect } from "@/api/system/dept";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import { getCompanyList } from '@/api/company/company'
-import AiSipCallUser from "../../aiSipCall/aiSipCallUser.vue";
 export default {
   name: "User",
-  components: { Treeselect ,AiSipCallUser},
+  components: {
+    Treeselect,
+    // 异步加载,避免与 store/permission 懒加载形成循环依赖
+    AiSipCallUser: () => import("../../aiSipCall/aiSipCallUser.vue")
+  },
   data() {
     return {
       // 遮罩层
@@ -677,11 +680,21 @@ export default {
 
     /** 绑定sip外呼 */
     adminBindSipCall(row){
-      this.$refs.aiSipCallUser.handleAddCompanyUserOnSip(row.userName,row.nickName,row.userId);
+      this.$nextTick(() => {
+        const ref = this.$refs.aiSipCallUser;
+        if (ref && ref.handleAddCompanyUserOnSip) {
+          ref.handleAddCompanyUserOnSip(row.userName, row.nickName, row.userId);
+        }
+      });
     },
     /** 修改sip外呼 */
     adminUpdateBindSipCall(row){
-      this.$refs.aiSipCallUser.handleUpdateById(row.aiSipCallUserId);
+      this.$nextTick(() => {
+        const ref = this.$refs.aiSipCallUser;
+        if (ref && ref.handleUpdateById) {
+          ref.handleUpdateById(row.aiSipCallUserId);
+        }
+      });
     },
     /** 新增按钮操作 */
     handleAdd() {