asd26269546 2 лет назад
Родитель
Сommit
74233d4d09
3 измененных файлов с 34 добавлено и 20 удалено
  1. 28 15
      src/main.js
  2. 5 4
      src/router/page/index.js
  3. 1 1
      src/router/router.js

+ 28 - 15
src/main.js

@@ -29,7 +29,7 @@ import './assets/cdn/iconfont/avue/iconfont.css'
 import './assets/cdn/iconfont/saber/iconfont.css'
 import './assets/cdn/avue/2.8.18/index.css'
 import { set } from 'nprogress'
-
+import { setToken } from '@/util/auth';
 // 注册全局crud驱动
 window.$crudCommon = crudCommon
 // 加载Vue拓展
@@ -110,19 +110,19 @@ iconfontVersion.forEach((ele) => {
 Vue.config.productionTip = false
 let instance = null
 function render({ props = {} } = {}) {
+  console.log(props)
   const { container } = props
   instance = new Vue({
     router,
     store,
     i18n,
-
+    data(){},
     render: (h) => h(App),
   }).$mount(container ? container.querySelector('#fjhxCloudVue') : '#fjhxCloudVue')
   console.log(instance)
 }
-
 // 独立运行时
-;(function () {
+(function () {
   console.log(window.__POWERED_BY_QIANKUN__)
   if (window.__POWERED_BY_QIANKUN__) {
     __webpack_public_path__ = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__
@@ -135,19 +135,32 @@ export async function bootstrap() {
   console.log('vue app bootstraped')
 }
 export async function mount(props) {
-  props.onGlobalStateChange((state, prev) => {
-    // state: 变更后的状态; prev 变更前的状态
-    console.log(state, prev, '子组件监听')
-  })
-  props.setGlobalState({ asd: 21312312 })
-  console.log(props)
-  render(props)
+	//设置token
+	console.log(props.data.token)
+	//挂载父路由
+	Vue.prototype.$parentRouter = props.data.router
+	if(props.data.token != null){
+		//注入父应用传来的登录信息
+		setToken(props.data.token.access_token)
+		store.commit('SET_TOKEN',props.data.token.access_token)
+		store.commit('SET_REFRESH_TOKEN', props.data.token.refresh_token);
+		store.commit('SET_TENANT_ID', props.data.token.tenant_id);
+		store.commit('SET_USER_INFO', props.data.token);
+		//设置监听事件触发方法,全局共享
+		props.onGlobalStateChange((state, prev) => {
+			// state: 变更后的状态; prev 变更前的状态
+			console.log(state, prev, '子组件监听');
+		});
+	}
+	//发送数据给全局
+	// props.setGlobalState({ token: 21312312 }) 
+	render(props)
 }
 export async function unmount() {
-  instance.$destroy()
-  instance.$el.innerHTML = ''
-  instance = null
-  // router = null;
+	// instance.$destroy();
+	instance.$el.innerHTML = "";
+	instance = null;
+	// router = null;
 }
 Vue.config.productionTip = false
 

+ 5 - 4
src/router/page/index.js

@@ -74,10 +74,7 @@ export default [
     name: '测试',
     component: () => import('@/views/test'),
   },
-  {
-    path: '*',
-    redirect: '/404',
-  },
+  
   {
     path: '/warehouse-maintenance',
     name: '仓库维护',
@@ -140,4 +137,8 @@ export default [
       },
     ],
   },
+  {
+    path: '*',
+    redirect: '/404',
+  },
 ]

+ 1 - 1
src/router/router.js

@@ -17,7 +17,7 @@ Vue.use(VueRouter);
 //创建路由
 export const createRouter = () =>
   new VueRouter({
-    mode: "history", // 去掉url中的#
+    mode: "hash", // 去掉url中的#
     scrollBehavior: () => ({
       y: 0,
     }),