vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > Vue全局注册kebab-case和PascalCase

Vue全局注册中的kebab-case和PascalCase用法

作者:宏辉

这篇文章主要介绍了Vue全局注册中的kebab-case和PascalCase用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

全局注册

全局注册的组件,可以用在所有的 Vue 实例 (new Vue) 中。

语法:

# 第一种方式
Vue.component('组件名称', { /* ... */ })

# 第二种方式
Vue.component('组件名称', 组件对象);

定义组件名:

使用 kebab-case(短横线命名)

Vue.component('my-component-name', { /* ... */ })

当使用 kebab-case (短横线分隔命名) 定义一个组件时,你也必须在引用这个自定义元素时使用 kebab-case,例如 <my-component-name>

使用 PascalCase(帕斯卡命名)

Vue.component('MyComponentName', { /* ... */ })

注意

当使用 PascalCase (首字母大写命名) 定义一个组件时,你在引用这个自定义元素时两种命名法都可以使用。

也就是说 <my-component-name><MyComponentName> 都是可接受的。

注意,尽管如此,直接在 DOM (即非字符串的模板) 中使用时只有 kebab-case 是有效的。

命名组件的时候可以是kebab-case,引用时候必须是kebab-case

命名组件的时候可以是PascalCase,引用时候必须是kebab-case

示例代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vuejs父子通信</title>
    <script src="../node_modules/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
    <!-- 使用组件 -->
    <my-div color="red" title="我是一个div"></my-div>
    <!-- 等价于
    <div style="color: red">我是一个div</div>
    -->
</div>

<script type="text/javascript">
    // 全局注册组件
    // Vue.component('my-div', {
    Vue.component('MyDiv', {
        template: `<div :style="'color:'+ color" >{{title}}</div>`,
        props: {
            color: {type: String, required: true, default: ""},
            title: {type: String, required: true}
        }
    });
    // 创建Vue实例
    var vue = new Vue({
        el: '#app', // 渲染的html元素
        data: { // 数据对象

        }
    });

</script>
</body>
</html>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文