范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

vue3动态组件使用技巧

  动态组件有两种常用场景:
  一是动态路由:// 动态路由 export const asyncRouterMap: Array = [   {     path: "/",     name: "index",     meta: { title: "首页" },     component: BasicLayout, // 引用了 BasicLayout 组件     redirect: "/welcome",     children: [       {         path: "welcome",         name: "Welcome",         meta: { title: "引导页" },         component: () => import("@/views/welcome.vue")       },       ...     ]   } ]
  二是动态渲染组件,比如在 Tabs 中切换:                
  在 vue2 中使用并不会引发什么其他的问题,但是当你将组件包装成一个响应式对象时,在 vue3 中,会出现一个警告:
  Vue received a Component which was made a reactive object. This can lead to unnecessary performance overhead, and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.
  出现这个警告是因为:使用 reactive 或 ref(在 data 函数中声明也是一样的)声明变量会做 proxy 代理,而我们组件代理之后并没有其他用处,为了节省性能开销,vue 推荐我们使用 shallowRef 或者 markRaw 跳过 proxy 代理。
  解决方法如上所说,需要使用 shallowRef 或 markRaw 进行处理:
  对于 Tabs 的处理:import { markRaw, ref } from "vue"  import A from "./components/A.vue" import B from "./components/B.vue"  interface ComponentList {  	name: String   component: Component }  const tab = ref([{     name: "组件 A",     component: markRaw(A) }, {     name: "组件 B",     component: markRaw(B) }])
  对于动态路由的处理:import { markRaw } from "vue"  // 动态路由 export const asyncRouterMap: Array = [   {     path: "/",     name: "index",     meta: { title: "首页" },     component: markRaw(BasicLayout), // 使用 markRaw     redirect: "/welcome", 		// ...   } ]
  而对于 shallowRef 和 markRaw,2 者的区别在于 shallowRef 只会对 value 的修改做出反应,比如:const state = shallowRef({ count: 1 })  // 不会触发更改 state.value.count = 2  // 会触发更改 state.value = { count: 2 }
  而 markRaw,是将一个对象标记为不可被转为代理。然后返回该对象本身。  const foo = markRaw({}) console.log(isReactive(reactive(foo))) // false  // 也适用于嵌套在其他响应性对象 const bar = reactive({ foo }) console.log(isReactive(bar.foo)) // false
  可看到,被 markRaw 处理过的对象已经不少一个响应式对象了。
  对于组件来说,它不应该是一个响应式对象,对于 shallowRef 和 markRaw 推荐在使用动态组件用 markRaw 进行处理。

交广会客厅初心不改写忠诚日复一日,用责任守护安全年复一年,用忠诚诠释信念。集宁工务段十八台线路车间党总支书记郑云典以满腔热情和辛勤付出练出一支工务铁军,将车间党总支打造成为制高点上的安全堡垒。党龄越长安全15年贵州女孩拒绝北大,贷款百万读哈佛,7年后因一条微博人设崩塌2015年8月27日,在美国的地铁上,一个拥有东方面孔的女人,正捧着一本书津津有味地读着,地铁到站后她慢慢合上书,书皮上赫然写着庄子两个字。女人不紧不慢地走下地铁,跟随人流出站,她精选诗歌是谁走漏了风声,雨哭泣着投入了秋水的怀抱每日好诗初秋的田野文宋茂林(河北)一座浩大色彩的宝库高粱红,稻谷黄,棉花白,葡萄紫稻草人的衣服也花花绿绿蜻蜓闪着银翼巡逻绿蝈蝈害羞躲起来清脆悦耳的歌声引来玉蝴蝶翩翩起舞和农人皱纹里动画版唐诗三百首312集(收藏)点击下面链接收看01春望杜甫02春晓孟浩然03登鹳雀楼王之涣04登玄都阁朱庆馀05观祈雨李约06春晚书山家屋壁贯休07归雁钱起08江雪柳宗元09咏鹅骆宾王10问刘十九白居易11易水玉林将新增一家AAAA景区!很多人都去过记者从自治区文旅厅获悉,日前经广西壮族自治区旅游资源开发利用与服务质量标准评定工作领导小组会议审议通过,公示了2022年第二批国家AAAA级旅游景区拟评定20家单位名单,其中北流市桂花飘飞的地方大美中国诗画神州系列之五桂林篇桂花飘飞的地方李千树1hr桂林山水甲天下,阳朔山水甲桂林。一条百里漓江,千秋万代画廊。流不尽刘三姐的山歌情,流不断游客们的相思梦。诗人的诗笔对此无言,越南国宝级美人,目若朗星齿如编贝,用镂空裙演绎东南亚风情真正优秀的女人是体现在自我价值的正视上,懂得自己在什么位置和处境,从而做出正确选择。优秀的女人如雪山莲花,傲骨但是不盲目自信。优秀的女人如皎洁的月亮,温柔了自己,照亮了他人。在时尚这一夜,女星各展风情,没料硬挤瘦成排骨的她们,尴尬了又是一年微博盛典。不少明星收到邀约,身着华服,登上红毯。乱花渐欲迷人眼,这一夜,女星们各展风情,魅力大胆释放。还有几位女星,心有默契,都选择了深V礼服当做战袍。虽说美美与共,但红毯古力娜扎异域风情美女,黑色吊带连衣裙,惊艳全场简直绝美不难看到,在古力娜扎的全身照中可以发现她的身材比例非常地好,身材十分高挑如同行走中的衣架子一般。而她的五官非常精致,身材线条感特别好,天鹅颈美到犯规。在礼裙腰部镂空的设计中可以看到十一月最后一天,重庆南坪商圈与观音桥商圈的街道,冷冷清清11月30日,2022年11月的最后一天,断崖式降温的重庆,灰朦朦的天空,如同城市的色彩。淅沥沥下雨的街道,一些外出的朋友拍了一些重庆的地标之地街景,冷冷清清,安安静静!一重庆南坪冬季来临重庆旅游攻略之三日游第一天1游玩攻略到达重庆市区,以解放碑为中心的十字路口,东西南北的四条步行街满是商场与小吃街,十八梯也在解放碑附近,可以按照十八梯解放碑步行街洪崖洞的步行路线游览,晚上步行到有千与