tengmaoqing / vite-plugin-qiankun

保留vite es特性,快速接入乾坤微前端子应用
MIT License
466 stars 84 forks source link

子应用index.html 中<link>的css样式丢失 #71

Open hulong-prong opened 1 year ago

hulong-prong commented 1 year ago

都是vite项目,vite子应用在main.ts中引入的样式文件,build后会在index.html默认通过 的方式引入css文件,主应用在加载子应用时,虽然会请求一次css文件,但是这个文件并没有在主应用的 中,导致子应用的 的样式全部丢失,请问这种情况有解决方式吗

hulong-prong commented 1 year ago

@tengmaoqing 请问这种情况如何解决呢

JanderFan commented 12 months ago

我也遇到了,请问楼上解决了吗

HelloAllenW commented 11 months ago

请问有解决方法了吗

Kimmyzhao commented 10 months ago

请问有解决方法了吗

wangzongao commented 6 months ago

可以定义一个虚拟组件,就像下面这样: image 然后在页面必须加载的layout.vue里通过异步组件的方式引用可以解决上面这个问题 const virtualComponent = defineAsyncComponent(() => import('@/views/virtualComponent.vue'));

CodePlayerXXm commented 3 months ago

可以定义一个虚拟组件,就像下面这样: image 然后在页面必须加载的layout.vue里通过异步组件的方式引用可以解决上面这个问题 const virtualComponent = defineAsyncComponent(() => import('@/views/virtualComponent.vue'));

请问是在子应用里加这个组件吗?是要在这里引用main,ts里引用的样式么?可以详细讲一下吗?

wangzongao commented 2 months ago

可以定义一个虚拟组件,就像下面这样: image 然后在页面必须加载的layout.vue里通过异步组件的方式引用可以解决上面这个问题 const virtualComponent = defineAsyncComponent(() => import('@/views/virtualComponent.vue'));

请问是在子应用里加这个组件吗?是要在这里引用main,ts里引用的样式么?可以详细讲一下吗?

我是vue2主应用,vue3子应用,所以是在子应用里加这个组件;这个组件我只写了这些内容:

image

剩下的交给浏览器自行加载,我把该组件放在了全局基础的布局组件layout.vue里作为异步子组件引入

image

具体效果就是加载布局组件的时候会重新引入一下index.css