crootfast
Version:
大前端工程化命令行脚手架
49 lines (41 loc) • 1.6 kB
JSX
import "@/styles/variableColor.less";
import "@/styles/reset.less";
import "@/styles/classNameModule.less";
import "@/styles/globalClassName.less";
import zhCN from 'antd/lib/locale/zh_CN';
import { ConfigProvider } from 'antd';
import { BrowserRouter, Routes, Route } from "react-router-dom";
import { createRoot } from "react-dom/client";
import AppComponent from "@/pages/app";
import { postModuleFederation } from "@stores/moduleFederation";
import dayjs from 'dayjs';
import 'dayjs/locale/zh-cn';
dayjs.locale('zh-cn');
async function Main() {
// 加载模块联邦组件
const BASEUIRESPS = import("crootfui/baseui"); // 基础组件
const PRODSRESPS = import("crootfui/prods"); // 业务组件
const TEMPSRESPS = import("crootfui/temps"); // 业务模版
const BOSSRESPS = import("crootfui/boss"); // 业务函数
Promise.all([BASEUIRESPS, PRODSRESPS, TEMPSRESPS, BOSSRESPS]).then(([baseui, prods, temps, boss]) => {
// console.log('模块联邦的组件:', TEMPSRESPS);
postModuleFederation('baseui', baseui);
postModuleFederation('prods', prods);
postModuleFederation('components', temps);
postModuleFederation('boss', boss);
const container = createRoot(document.getElementById("root"));
container.render(
<ConfigProvider locale={zhCN}>
<>
<BrowserRouter>
<Routes>
<Route path="/smr/login" element={<temps.LoginBox />} />
<Route path="/*" element={<AppComponent />} />
</Routes>
</BrowserRouter>
</>
</ConfigProvider>
);
});
}
Main();