解决vue3按注册名动态渲染组件在setup中无效的问题

在setup语法糖中,按注册名动态渲染组件无效:

javascript 复制代码
<template>
  <component :is="cpnName" />
</template>
<script setup>
  import QuesTypeContent from './QuesTypeContent.vue';
  const cpnName = 'QuesTypeContent';
</script>

解决办法:

  • 1.抛弃setup用选项式api。
  • 2.如果我们必须要使用到组件名渲染时,做如下更改即可生效:
javascript 复制代码
<template>
  <component :is="cpn[cpnName]" />
</template>
<script setup>
  import QuesTypeContent from './QuesTypeContent.vue';
  const cpnName = 'QuesTypeContent';
  const cpn = { QuesTypeContent };
</script>

本质上这还是直接使用组件对象,但解决了特定情况下必须用到组件注册名的问题。

相关推荐
小明记账簿2 分钟前
解锁前端新技能:让JavaScript与CSS变量共舞
前端·javascript·css
pyniu6 分钟前
redis day1
java·前端·spring
b***748815 分钟前
从技术复杂度到体系竞争力:2026 年前端发展的全新范式转移
前端
IT_陈寒18 分钟前
Java并发编程避坑指南:这5个隐藏陷阱让你的性能暴跌50%!
前端·人工智能·后端
化作繁星19 分钟前
前端设计模式详解
前端·设计模式
jinxinyuuuus26 分钟前
快手在线去水印:短链解析、API逆向与视频流的元数据重构
前端·人工智能·算法·重构
棒棒的唐30 分钟前
avue uploader图片预览拉伸变型的css处理方法
前端·css
sunshine~~~32 分钟前
ROS 2 Jazzy + Python 3.12 + Web 前端案例
开发语言·前端·python·anaconda·ros2
古韵35 分钟前
如何从Axios平滑迁移到Alova
vue.js·react.js·node.js
WYiQIU1 小时前
突破字节前端2-1⾯试: JS异步编程问题应答范式及进阶(视频教学及完整源码笔记)
开发语言·前端·javascript·vue.js·笔记·面试·github