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 标签,但是功能上没啥问题。

相关推荐
Irene199120 小时前
Vuex4:专为 Vue 3 设计,提供完整 TypeScript 支持
vue3·vuex4
无法长大1 天前
如何判断项目需不需要用、能不能用Tailwind CSS
前端·css·vue.js·elementui·vue3·tailwind css
cui_win2 天前
企业级中后台开源解决方案汇总
开源·vue3·ts
Sapphire~3 天前
Vue3-19 hooks 前端数据和方法的封装
前端·vue3
記億揺晃着的那天3 天前
Vue3 动态路由在生产环境才出现白屏的排查与解决(keep-alive 踩坑实录)
vue3·vue router·动态路由·生产环境报错
kong79069287 天前
Vue3快速入门
前端·vue3
无法长大8 天前
Mac M1 环境下使用 Rust Tauri 将 Vue3 项目打包成 APK 完整指南
android·前端·macos·rust·vue3·tauri·打包apk
淡笑沐白9 天前
Vue3使用ElementPlus实现菜单的无限递归
javascript·vue3·elementplus
Sapphire~9 天前
Vue3-18 生命周期(vue2+vue3)
vue3
Sapphire~9 天前
Vue3-17 父子组件使用props传值
vue3