vue2中组件注册后,调用时如何命名?组件传参时参数名称如何命名?

1. vue2中组件后,调用时如何命名?

场景:

javascript 复制代码
//组件注册
Vue.component('TableList', '../../../TableList.vue');

//父组件调用
//写法1 - 驼峰命名(camelCase)
<TableList/>

//写法2 - 短横线分隔(kebab-case)
<table-list/>

总结:

在 Vue 中,当你使用驼峰命名法(camelCase)注册组件时,既可以使用驼峰,也可以在模板中使用短横线分隔的名称(kebab-case)来调用组件。这是 Vue 的一个特性,它会将短横线分隔的属性名自动转换为驼峰命名法。这样做是为了兼容 HTML 和 JavaScript 的命名习惯。

注意:当使用 kebab-case (短横线分隔命名) 定义一个组件时,你也必须在引用这个自定义元素时使用 kebab-case,不能使用驼峰!

2. vue2中子组件接收参数时如何声明?

场景:

javascript 复制代码
//父组件调用
<table-listplaceholder="姓名" api-key="name" />

//子组件内接收
//写法1
 props: {
    apiKey: {
      type: String,
      default: ''
    }
  }
//写法2
props: {
    'api-key': {
      type: String,
      default: ''
    }
  }  

总结:

模板中:使用 - 分隔的属性名(如 api-key)。组件内部:使用驼峰命名法访问属性(如 apiKey)。这样做是为了兼容 HTML 和 JavaScript 的命名习惯。

驼峰命名法:使用 apiKey 更符合 JavaScript 的常见命名习惯,也更容易阅读。

-命名法:使用 'api-key' 可以直接与模板中的属性名对应,但在组件内部使用时需要加引号。

相关推荐
liangshanbo121518 分钟前
JavaScript 面试题:Object.keys() 的返回顺序是无序的吗?
开发语言·javascript·ecmascript
geovindu30 分钟前
css: Timeline scribble
前端·css·iphone
沙漠之主9 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
hasty9 小时前
不上传新包,也能改变用户拿到的版本:npm dist-tag 的 OIDC 权限治理
前端·npm·node.js
Csvn9 小时前
diff 算法(虚拟 DOM Reconciliation)
前端
前端snow10 小时前
ai agent --- 文件存储
前端
Frag0ut10 小时前
Chrome四大版本获取及共存指南:Stable/Beta/Dev/Canary
前端·chrome·浏览器·dev·beta·canary·共存版
IT_陈寒12 小时前
SpringBoot自动配置坑了我一把,原来是这样绕过去的
前端·人工智能·后端
广州华水科技12 小时前
单北斗GNSS变形监测在大坝安全监测中的应用与优势
前端
zeng不错12 小时前
B站 173 个投稿活动看到眼瞎?我写了个扩展,主打一个精准打击
前端