vue大小写总结

1. 组件

组件的定义有两种命名方式:PascalCase   和   kebab-case

PascalCase  定义的组件的引用:PascalCase   和   kebab-case  均可

// PascalCase定义方式
Vue.component('MyComponentName', { /* ... */ })
 
 
// 引用方式一
<my-component-name />
 
// 引用方式二
<MyComponentName />

kebab-case   定义的组件的引用:kebab-case  

// kebab-case定义方式
Vue.component('my-component-name', { /* ... */ })
 
 
// 引用方式
<my-component-name />

2.  property

HTML中的attribute名大小写不敏感,浏览器会把所有大写字符解释为小写。这就导致在js中以   camelCase  方式命名的prop名,在HTML中需要使用  kebab-case   的方式引用

// PascalCase方式定义property
Vue.component('blog-post', {
  // 在 JavaScript 中是 camelCase 的
  props: ['postTitle'],
  template: '<h3>{{ postTitle }}</h3>'
})
 
 
// kebab-case方式引用property
<!-- 在 HTML 中是 kebab-case 的 -->
<blog-post post-title="hello"></blog-post>

3. 事件名

自定义的事件名不存在任何大小写的转换,必须保证定义的事件名与引用的事件名完全一致且都为小写

反例

// 定义一个包含大写的事件名
this.$emit('myEvent')
 
 
<!-- 引用不到一 -->
<my-component v-on:my-event="doSomething"></my-component>
 
<!-- 引用不到二 -->
<my-component v-on:myEvent="doSomething"></my-component>
 
<!-- 引用不到三 -->
<my-component v-on:myevent="doSomething"></my-component>

正例:

// 定义事件
this.$emit('myevent')
 
 
// 引用
<my-component v-on:myevent="doSomething"></my-component>

 

posted @ 2024-07-25 09:04  蓝色精灵jah  阅读(20)  评论(0编辑  收藏  举报