逻辑编排前端

main.ts 1.9KB

    /* * @Author: Devin * @Date: 2022-11-10 15:07:57 * @LastEditors: Devin * @LastEditTime: 2023-02-23 16:43:29 * @Description: 主配置 */ import { createApp } from 'vue'; import CommonUI from 'common-module-ui'; import 'common-module-ui/lib/style.css'; import { setEventBus } from './utils/eventBus.js'; import { setupGlobalComponents } from './components/index'; // import CommonUI from './common-ui/common-module-ui.js'; // import './common-ui/style.css'; import App from './App.vue'; import router from './router'; import store from './store'; import { setupProductComponents } from './views/_components/index.js'; /** * 配置qiankun */ // eslint-disable-next-line import/order import { renderWithQiankun, qiankunWindow } from 'vite-plugin-qiankun/dist/helper'; let app: any = null; function render(props: any = {}) { const { container } = props; app = createApp(App); setEventBus(app); app.use(router); app.use(CommonUI); console.log(CommonUI); app.use(store); setupGlobalComponents(app); // 注册项目全局组件 setupProductComponents(app); app?.mount(container ? container.querySelector('#app') : '#app'); console.log('开始加载相关内容'); } renderWithQiankun({ mount(props: any) { props.onGlobalStateChange((state: any) => { store.commit('setMainProduct', state.setMainProduct); store.commit('changeShowInfo', state.showInfo); localStorage.setItem('mainProduct', JSON.stringify(state.mainProduct)); }, true); render(props); }, bootstrap() { console.log('%c', 'color:green;', ' ChildOne bootstrap'); }, update() { console.log('%c', 'color:green;', ' ChildOne update'); }, unmount(props: any) { console.log('unmount', props); app.unmount(); app._container.innerHTML = ''; app = null; } }); if (!qiankunWindow.__POWERED_BY_QIANKUN__) { console.log('并不是qiankun渲染'); render(); }