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

网站建设怎么找客源?江阴服装外贸现状

网站建设怎么找客源?,江阴服装外贸现状,凡科建站快车官网,做网站的常识工具使用版本 node --> 16vue/cli --> 5 创建文件 创建文件夹qiankun-test。 使用vue脚手架创建主应用main和子应用dev 主应用 安装 qiankun: yarn add qiankun 或者 npm i qiankun -S 使用qiankun: 在 utils 内创建 微应用文件夹 microApp,在该文件夹…

工具使用版本

  • node --> 16+
  • @vue/cli --> 5+

创建文件

创建文件夹qiankun-test。

使用vue脚手架创建主应用main和子应用dev

 

主应用

安装 qiankun:

yarn add qiankun 或者 
npm i qiankun -S

使用qiankun:

  1. 在 utils 内创建 微应用文件夹 microApp,在该文件夹内创建微应用出口文件 index.js,路由文件 microAppRouter,配置函数文件 microAppSetting。

  2. 路由文件 microAppRouter

    // 微应用路由
    const microAppRouter = [{name: "dev", //用于应用名   容器id   应用路由基地址url: "//localhost:8080", //应用路径(ip与端口)props: { propsName: "8080" }, //初始化时需要传递给微应用的数据// hidden: false,//是否启用该应用,默认falsemenuName: "dev",//自定义属性 根据需要自己配置(用在了菜单导航的名称)},];export default microAppRouter;
  3. 配置函数文件 microAppSetting

    // 引入路由
    import microAppRouter from "./microAppRouter";
    // 微应用配置
    const microAppSetting = {};
    export default microAppSetting;
    /*** @description: 配置子应用* @param {*}* @return {*}*/
    microAppSetting.microApps = () => {let apps = [];microAppRouter.map((item) => {if (!item.hidden) {apps.push({name: item.name, //应用名(不可重复)entry: item.url, //默认加载应用路径(ip与端口)container: `#${item.name}`, //容器idactiveRule: `/${item.name}`, //激活该应用的路径hash模式+#(子应用路由基地址)...item,});}}); return apps;
    };
  4. 微应用出口文件 index.js

    // 引入 qiankun  应用注册函数   开启函数
    import { registerMicroApps, start } from "qiankun";
    // 引入 微应用配置文件
    import microAppSetting from "./microAppSetting";
    //注册子应用
    registerMicroApps(microAppSetting.microApps());
    //开启
    start(sandbox: { strictStyleIsolation?: boolean, // 开启严格的样式隔离模式。这种模式下 qiankun 会为每个微应用的容器包裹上一个 [shadow dom]节点,从而确保微应用的样式不会对全局造成影响。experimentalStyleIsolation?: boolean// 设置实验性的样式隔离特性,即在子应用下面的样式都会包一个特殊的选择器规则来限定其影响范围
    });
  5. 在App.vue内配置微应用容器及跳转菜单

    <template><div id="fapp"><!-- 主应用路由出口 --><router-link to="/mian">主应用</router-link><router-linkv-for="(item,index) in microAppDom_Router":key="index":to="`/${item.name}`?${item.props?.propsName}">{{ item.menuName }}</router-link><router-view></router-view></div>
    </template><script>
    // 引入子应用路由
    import microAppRouter from "@/utils/microApp/microAppRouter";
    export default {name: 'App',data() {return {microAppDom_Router: microAppRouter,};}
    }
    </script>
  6. 在main.js文件内引入微应用出口文件 index.js
import "@/utils/microApp/index";

     7. 路由文件router.js

const router = new VueRouter({mode: "history",routes
})

子应用配置

  1. 在src中增加public-path.js文件
    //public-path.jsif (window.__POWERED_BY_QIANKUN__) {__webpack_public_path__ = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__;
    }
  2. 在main.js文件内导出生命周期钩子
    import Vue from 'vue'
    import App from './App.vue'
    import './public-path'
    Vue.config.productionTip = falselet instance = null;
    function render(props = {}) {const { container } = props;// Vue.use(router)instance = new Vue({render: (h) => h(App),}).$mount(container ? container.querySelector('#app') : '#app');
    }// 独立运行时
    if (!window.__POWERED_BY_QIANKUN__) {render();
    }export async function bootstrap() {console.log('[vue] vue app bootstraped');
    }
    export async function mount(props) {console.log('[vue] props from main framework', props);render(props);
    }
    export async function unmount() {instance.$destroy();instance.$el.innerHTML = '';instance = null;
    }
    
  3. 配置Webpack、跨域与端口号

    const { defineConfig } = require('@vue/cli-service')
    const { name } = require('./package');
    module.exports = defineConfig({devServer: {headers: {'Access-Control-Allow-Origin': '*',},},configureWebpack: {output: {library: `${name}-[name]`,libraryTarget: 'umd', // 把微应用打包成 umd 库格式//jsonpFunction: `webpackJsonp_${name}` // webpack5废弃jsonpFunctionchunkLoadingGlobal: `webpackJsonp_${name}`, },},
    });
  4. 路由文件router.js
const router = new VueRouter({mode: "history",base: "/dev",routes,
});

报 ____webpack_public_path__未定义的问题
解决:
根据创建项目时选择的配置,在package.json文件内添加全局配置

module.exports = {
---globals: {__webpack_public_path__: "writable",},
---
};

报子应用接口404问题
解决:

主应用vue.config.js配置代理

module.exports = defineConfig({
---devServer: {proxy: {'/api1': { // 匹配所有以'/api1' 开头的请求路径target: 'http://localhost:8080/', // 代理目标的基础路径changeOrigin: true,pathRewrite: {'^/api1':''}}},
},
---
})

http://www.yayakq.cn/news/506178/

相关文章:

  • 网站开发专员岗位职责自学网站查分数
  • 政务信息公开与网站建设报告广州骏域网站建设专家手机电脑版
  • 鞍山网站开发公司平面设计免费自学网
  • 为什么邮箱突然进不去了总提示正在进入不安全网站WordPress实现网址导航
  • 网站制作论文文献综述可拖拽建设网站没有了吗
  • 网站公司哪家好标书制作
  • 举报网站制度建设方面枞阳县住房和城乡建设局网站
  • 微网站可以做成域名访问影院网站模板
  • 广州英文网站制作免费优化推广网站的软件
  • 营销型网站的例子财经大学网站建设
  • 昆明移动端网站建设网站片头怎么做
  • wordpress无法查看站点保定网站建设的过程
  • 国家胸痛中心建设网站做外汇看的网站
  • 论坛网站开发成本免费高清logo在线
  • 宜宾网站开发招聘景安怎么把网站做别名
  • 小企业网站建设制作平台wordpress octopress
  • 华为云助力企业网站安全保障网站建设需要什么证书
  • 如何选择营销网站建设政务网站建设工作方案
  • 餐饮酒店网站建设品牌运营岗位职责
  • 求个a站平面设计接单报价表
  • 河北建设厅八大员报名网站温州网站设计力推亿企帮
  • 网站添加关键词宁波seo外包费用
  • 网站建设岗位任职资格专业微网站电话号码
  • 网站为什么需要备案号有效的引流推广方法
  • 成都做网站的公司恩施网站优化
  • 合肥金融网站设计长沙 汽车 网站建设
  • 网银网站模板seo排名哪家正规
  • 基于wordpress学校网站佛山高端网站建设工作室
  • 模板网站怎么用媒体电商概念
  • 我先做个网站怎么做购物app下载