我们一般定义组件的方式有两种:
kebab-case。PascalCase 。例如,我写一个简单的子组件。
我是子组件
注册的时候采用PascalCase命名:
createApp(App).component('MyComponent', MyComponent).mount('#app')
使用的时候:
我是父组件
结果如下:

自定义的组件在使用上,命名的规则如下:
PascalCase命名。PascalCase命名(首字母不区分大小写)或者kebab-case命名(每个单词的首字母不区分大小写)。一般编码的时候,习惯这样:命名的时候采取PascalCase命名法,使用的时候采取kebab-case法(每个单词的首字母小写)。
父组件在给子组件传递变量的时候,如果变量名称采用kebab-case法,那么子组件在接收的时候应该写驼峰命名法。
例如,我再父组件中这么传参:
子组件的接收:驼峰命名法。
我是子组件
接收来自父组件传入的参数:{{ props.userName }}
效果如下:

父组件在传递给子组件的时候,命名上我测试下来没有什么特殊的要求。先说下传递的命名上:
父组件传递:
const sayHello = ()=>{console.log('Hello')
}
子组件的接收上:
结果如下:无论是使用下划线分割还是原名,都可以正常接收。

经过测试,父组件在传函数的时候,使用kebab-case法,和上述案例一个效果。
因此我们就这么约定吧: