Vue中调用组件使用kebab-case短横线命名法和使用大驼峰的区别详解

 更新时间:2023年10月16日 11:25:24   作者:清风细雨_林木木  
这篇文章主要介绍了Vue中调用组件使用kebab-case(短横线)命名法和使用大驼峰的区别,通过实例可以看出如果是在html中使用组件,那么就不能用大驼峰式写法,如果是在.vue 文件中就可以,需要的朋友可以参考下

Vue中调用组件使用kebab-case(短横线)命名法和使用大驼峰的区别

1.解析官网手册说明

在这里插入图片描述

红线部分已经说的很清楚,“直接在DOM(即非字符串模版)中只有kebab-case 生效”。

只不过说的不是人话,现在我们来具体分析一下。

2.什么是“字符串模版”,什么是“dom模版” 字符串模版

字符串模板就是写在vue中的template中定义的模板,如.vue的单文件组件模板和定义组件时template属性值的模板。字符串模板不会在页面初始化参与页面的渲染,会被vue进行解析编译之后再被浏览器渲染,所以不受限于html结构和标签的命名。

实例:

Vue.component('MyComponentA', {
    template: '<div MyId="123"><MyComponentB>hello, world</MyComponentB></div>'
})

<div id="app">
    <MyComponentA></MyComponentA>
</div>

dom模版(或者称为Html模板)

dom模板就是写在html文件中,一打开就会被浏览器进行解析渲染的,所以要遵循html结构和标签的命名,否则浏览器不解析也就不能获取内容了。

下面的例子不会被正确渲染, 会被解析成mycomponent,但是注册的vue的组件是MyComponent,因此无法渲染。

<!DOCTYPE <html>
    <head>
        <meta charset="utf-8">
        <title>Vue Component</title>
    </head>
    <body>
        <div id="app"> 
            Hello Vue
            <MyComponent></MyComponent>
        </div>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
    <script >
        //全局注册
        Vue.component('MyComponent', {
            template: '<div>组件类容</div>'
        });
        new Vue ({
            el: '#app'
        });
    </script>
    </body>
</html>

能正常显示的:

<!DOCTYPE <html>
    <head>
        <meta charset="utf-8">
        <title>Vue Component</title>
    </head>
    <body>
        <div id="app"> 
            Hello Vue
            <my-component></my-component>
        </div>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
    <script >
        //全局注册
        Vue.component('my-component', {
            template: '<div>组件类容</div>'
        });
        new Vue ({
            el: '#app'
        });
    </script>
    </body>
</html>

总结:
通过上面的实例很简单就能看出,如果是在html中使用组件,那么就不能用大驼峰式写法。如果是在.vue 文件中就可以,就这么简单。

到此这篇关于Vue中调用组件使用kebab-case(短横线)命名法和使用大驼峰的区别的文章就介绍到这了,更多相关vue短横线命名法和大驼峰区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于VUE.JS的移动端框架Mint UI的使用

    基于VUE.JS的移动端框架Mint UI的使用

    本篇文章主要介绍了基于VUE.JS的移动端框架Mint UI的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Antd的table组件表格的序号自增操作

    Antd的table组件表格的序号自增操作

    这篇文章主要介绍了Antd的table组件表格的序号自增操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • vue全屏事件开发详解

    vue全屏事件开发详解

    这篇文章主要为大家详细介绍了vue全屏事件的开发过程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Vue通过vue-router实现页面跳转的全过程

    Vue通过vue-router实现页面跳转的全过程

    这篇文章主要介绍了Vue通过vue-router实现页面跳转的操作步骤,文中有详细的代码示例和图文供大家参考,对大家的学习或工作有一定的帮助,感兴趣的朋友可以参考下
    2024-04-04
  • vue3+ts封装弹窗及封装分页的示例代码

    vue3+ts封装弹窗及封装分页的示例代码

    这篇文章主要介绍了vue3+ts封装弹窗及封装分页的示例代码,本文通过定义defaultDialog .vue,结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • 解决打包后出现错误y.a.addRoute is not a function的问题

    解决打包后出现错误y.a.addRoute is not a function的

    这篇文章主要介绍了解决打包后出现y.a.addRoute is not a function的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 在Vue中实现文件预览与打印的代码示例

    在Vue中实现文件预览与打印的代码示例

    在Vue应用中,有时我们需要实现文件预览和打印的功能,比如,我们可能需要预览并打印PDF文件、图片文件等,本文将介绍如何在Vue中实现文件预览和打印的功能,并提供相应的代码示例
    2023-06-06
  • vue设置页面超时15分钟自动退出登录的方法详解

    vue设置页面超时15分钟自动退出登录的方法详解

    当用户登录后,如果长时间未操作页面这个时候需要自动退出登录回到登录页面,本文将给大家介绍一下vue设置页面超时15分钟自动退出登录的方法,感兴趣的同学可以自己动手试一下
    2023-10-10
  • vue中data改变后让视图同步更新的方法

    vue中data改变后让视图同步更新的方法

    这篇文章主要给大家介绍了关于vue中data改变后让视图同步更新的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • vue2.x中的provide和inject用法小结

    vue2.x中的provide和inject用法小结

    这篇文章主要介绍了vue2.x中的provide和inject用法小结,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-12-12

最新评论