Vue3-42-组件-给组件指定名称 + defineOptions 函数的简单使用

问题说明

复制代码
当我们在 使用 <script setup> 组合式 API的时候,发现我们并没有给组件指定它的名称。
此时它实际上使用的是 文件的名称 作为组件的名称。
例如 : 组件文件是 【componentABC.vue】
那么这个组件的默认名称就是 【componentABC】.

现在我们如何显式地为组件指定一个名称呢?
下面就是本文要介绍的解决方案:

解决方案一

在 vue3 中,提供了一个 defineOprions 方法,

此方法可以帮助我们 配置 组件的选项式 属性,例如 name 属性;

而且,这个方法可以直接使用,不需要做任何的引入动作。

下面是代码案例:

ts 复制代码
文件名称 :componentABC.vue 

<script setup lang="ts">
   defineOptions({
   	name:'xxxx' // 此时这个组件的名称就是 xxx 
   })
</script>

注意 : 这个方法,官方文档显示,只能在 vue 3.3+ 的版本中使用。

解决方案二

这是个比较通用的解决方案,但是不是很优雅:

就是 再写一个 <script> 标签,通过选项式的方式,指定name属性。

下面是代码案例:

ts 复制代码
文件名称 :componentABC.vue 

<script lang="ts">
    export default {
        name:'cca'
    }
</script>

<script setup lang="ts">
  。。。
</script>

这种方式就是 会出现多个 script 标签,但是功能上没啥问题。

相关推荐
IT教程资源C1 天前
(N_158)基于微信小程序学生社团管理系统
mysql·vue3·前后端分离·社团小程序·springboot社团小程序
H_HX1261 天前
vue3 - 图片放大镜效果实现
前端·vue.js·vue3·vueuse·图片放大镜
IT教程资源2 天前
N-158基于微信小程序学生社团管理系统
vue3·uniapp·前后端分离·springboot社团·社团小程序
Sheldon一蓑烟雨任平生3 天前
Vue3 重构待办事项(主要练习组件化)
vue.js·重构·vue3·组件化练习
代码哈士奇4 天前
使用vite+vue3+ElementPlus+pinia搭建中后台应用-前端
前端·vue3·管理系统·vite7
Sheldon一蓑烟雨任平生5 天前
Vue3 透传 Attributes
vue.js·vue3·透传attributes·禁用attributes继承·深层组件继承
Sheldon一蓑烟雨任平生5 天前
Vue3 生命周期
vue3·生命周期·1024程序员节·setup·vue3 生命周期·vue2 生命周期
一只小阿乐6 天前
vue3 中实现父子组件v-model双向绑定 总结
前端·javascript·vue.js·vue3·组件·v-model语法糖
IT教程资源C6 天前
(N_157)基于springboot,vue服装商城系统
mysql·vue3·前后端分离·springboot服装商城
Sheldon一蓑烟雨任平生7 天前
Vue3 组件 v-model
vue.js·vue3·v-model·definemodel·v-model修饰符·自定义双向绑定组件·多个v-model绑定