当前位置: 首页 > news >正文

班级网站素材下载鞋材 技术支持 东莞网站建设

班级网站素材下载,鞋材 技术支持 东莞网站建设,做招牌的广告公司,企业网关微前端即是由一个主应用来集成多个微应用#xff08;可以不区分技术栈进行集成#xff09; 下面是使用微前端框架之一 MicroApp 对 react微应用 的详细流程 第一步 创建主应用my-mj-app 利用脚手架 npx create-react-app my-mj-app 快速创建 安装 npm install --save rea…微前端即是由一个主应用来集成多个微应用可以不区分技术栈进行集成 下面是使用微前端框架之一 MicroApp 对 react微应用 的详细流程   第一步 创建主应用my-mj-app 利用脚手架 npx create-react-app my-mj-app 快速创建 安装 npm install --save react-router-dom  路由 npm run start  启动  localhost:3000   第二步 创建微应用reactapp1 利用webpack构建   //初始化项目 npm init -y//安装核心库 npm install react react-dom //webpack打包工具 npm install --save-dev webpack webpack-cli webpack-dev-server //Babel用于将 JSX 和 ES6 代码转换成兼容浏览器的 JavaScript 代码。 npm install --save-dev babel/core babel-loader babel/preset-env babel/preset-react //HTML 插件自动生成 HTML 文件并自动引入打包后的 JavaScript 文件。 npm install --save-dev html-webpack-plugin 配置Babel 根目录下创建一个 .babelrc 文件 {presets: [babel/preset-env, // 转换 ES6[// 转换 JSXbabel/preset-react,{runtime: automatic // 使用 React 17 的 JSX 转换方式}]] } 配置Webpack 根目录下创建一个 webpack.config.js const path require(path); const HtmlWebpackPlugin require(html-webpack-plugin);module.exports {entry: ./src/index.jsx, // 项目入口文件output: {filename: bundle.js, // 输出的文件名path: path.resolve(__dirname, dist), // 输出的目录},resolve: {extensions: [.js, .jsx] // 引入文件时不用写后缀},module: {rules: [{test: /\.jsx?$/,exclude: /node_modules/,use: {loader: babel-loader}}]},plugins: [new HtmlWebpackPlugin({template: ./src/index.html // 模板文件})] };创建React组件 在 src 目录下创建 index.jsx 和 App.jsx src/index.jsx   import { createRoot } from react-dom/client; import App from ./App;const container document.getElementById(root); const root createRoot(container); root.render(App /);src/App.jsx function App() {return divHello, React!/div; }export default App; src/index.html   !DOCTYPE html htmlheadtitleReact App/title/headbodydiv idroot/div/body /html修改package.json scripts: {start: webpack serve --open --mode development,build: webpack --mode production }npm start npm run build 至此完成了一个基础的 React Webpack 项目的搭建 第三步 有了主应用和子应用可以有多个不同技术栈应用开始接入MicroApp微服务 主应用配置 安装依赖 npm i micro-zoe/micro-app --save 初始化micro-app  // index.js import microApp from micro-zoe/micro-app microApp.start() 嵌入第一个子应用 function AppChild(){return divh1我是主应用/h1h1子应用/h1micro-app namereactapp1 urlhttp://localhost:8080//micro-app/div } export default AppChild;子应用配置 设置跨域支持 //webpack.config.jsdevServer: {headers: {Access-Control-Allow-Origin: *,Access-Control-Allow-Methods: GET, POST, PUT, DELETE, PATCH, OPTIONS,Access-Control-Allow-Headers: X-Requested-With, content-type, Authorization,},},注册卸载函数 // index.js window.unmount () {ReactDOM.unmountComponentAtNode(document.getElementById(root)) } 第四步 下面利用craco嵌入第二个子应用 还是先创建微应用reactapp2 利用脚手架 npx create-react-app reactapp2 快速创建 利用cracoCreate React App Configuration Override配置webpack craco 是一个用于扩展 Create React AppCRA的工具CRA 是一个用于快速搭建 React 应用的脚手架工具。CRA 提供了一个简单的项目结构和配置使得开发者可以快速开始一个 React 项目的开发。 然而 CRA 的配置是被隐藏的开发者无法对其进行自定义和扩展。这就是 craco 出现的原因。cracoCreate React App Configuration Override 允许开发者覆盖和扩展 CRA 的配置以满足更复杂的项目需求。 使用 craco开发者可以在不弹出 CRA 的配置的情况下修改 webpack 配置、babel 配置、ESLint 配置、devServer配置 等。craco 提供了一种简单的方式来覆盖 CRA 的默认配置同时保留了 CRA 的简洁性和易用性。 通过 craco开发者可以使用自定义的 webpack 插件、babel 插件 和 其他工具以满足项目的特定需求。例如可以添加自定义的 webpack loader配置自定义的 babel preset 或 plugin或者修改 webpack 的输出路径等。 npm i -D craco/craco 修改 package.json 文件中 scripts 配置的 react-scripts 替换为 craco scripts: { - // start: react-scripts start, - // build: react-scripts build, - // test: react-scripts test,start: craco start,build: craco build,test: craco test,eject: react-scripts eject } 根目录创建 craco.config.js 配置文件可以理解为 Vue 项目中外抛的 vue.config.js。   const path require(path); const { CracoAliasPlugin } require(react-app-rewire-alias);module.exports {// 跨域配置devServer: {port: 8090,proxy: {/api: {target: https://localhost:8080,changeOrigin: true,pathRewrite: {^/api: }}},headers: {Access-Control-Allow-Origin: *,Access-Control-Allow-Methods: GET, POST, PUT, DELETE, PATCH, OPTIONS,Access-Control-Allow-Headers: X-Requested-With, content-type, Authorization,},// ...},// webpack 配置webpack: {// 配置内容},// 配置别名plugins: [// 配置内容], };更改主应用配置 嵌入第二个子应用   function AppChild(){return divh1我是主应用/h1h1第一个子应用/h1micro-app namereactapp1 urlhttp://localhost:8080//micro-apph1第二个子应用/h1micro-app namereactapp2 urlhttp://localhost:8090//micro-app/div } export default AppChild; 集成后效果图如下 至此利用MicroApp集成主应用微应用集成完毕更多应用配置可以查询官方文档 MicroApp官网 https://micro-zoe.github.io/doc/zh/ craco  中文文档 https://developer.aliyun.com/article/1397201
http://www.hkea.cn/news/14286994/

相关文章:

  • 小公司做网站需要注意什么问题上海seo培训
  • 国土资源和建设部网站wordpress如何添加商桥
  • 网站建设和运行遇到的问题网站怎么在工信部备案
  • 军事新闻最新24小时没有网站可以做seo吗
  • 06627网页制作和网站建设试卷dw制作网站
  • 关键字网站采集网站建设预付流程
  • 沾益县住房和城乡建设局网站外贸网站模
  • 火车票网站建设多少钱协会网站建设及维护
  • 有用模板网在线制作免费网站做网站虚拟主机可以用服务器吗
  • 什么是关键词广告东莞网站建设网站排名优化
  • 阜阳建设大厦网站大连建设银行招聘网站
  • 自己动手制作网站唐山免费自助建站模板
  • 网站备案 关闭网站沈阳网站建设报价
  • 网站建设四不问题中国住房和城乡建设部网站注册中心
  • 网站建设专家是干嘛的怎么在网上卖东西
  • 百度免费网站空间南山区住房与建设局官方网站
  • 成都科技网站建设费用wordpress做文学网
  • 网站怎么换服务器丹阳企业网站制作
  • 做网站什么一级导航二级导航上海网站建设安全
  • 网站建设执行力wordpress seo插件中文
  • 一流的镇江网站优化外包网络推广公司怎么选
  • 网站的文章参考文献怎么做wordpress 个人资料页
  • 做网站的课题背景介绍php电子商务网站建设
  • 自己怎么免费做网站案列网站
  • 建设网站后期需要哪些建设网络平台绩效目标申报表
  • 做网站推广广告餐饮招商
  • express 网站开发泰安大众网
  • 做网站要学的教程网页制作讲解视频
  • 网站活动推广方案wordpress前台登录模块
  • 学中文网站网站建设和网站设计的区别