Vue.component的属性说明

 更新时间:2022年03月29日 08:52:47   作者:程序员徐小白  
这篇文章主要介绍了Vue.component的属性说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Vue.component的属性

Vue.component(‘组件名称’,{})中的属性

1.template

作用:用来定义组件的html模板

使用:直接接字符串

Vue.component('组件名称',
{
template:'<p>aaa</p>'
})

2.data

作用:

定义一个在组件中使用的数据

定义:

Vue.component('组件名称',
{
    data:fuction(){
        return(
            msg:'aa'
            //每个组件使用的数据都是独立的
            //每个数据都是新创建的
            //就算用的是同一个组件模板
            //var a=0
            //而直接return a
            //则会多个页面上的组件同时使用同一个数据源
        )
    }
})

使用:

使用插值表达式{undefined{msg}}

3.methods

作用:

定义一个在组件中使用的方法

定义:

Vue.component('组件名称',
{
    methods:{
        方法名(){}
    }
})

4.props

作用:

将父组件的数据传递到子组件

定义:

Vue.component('组件名称',
{
props:['对接父组件数据的名称'],
})

与data中的区别:

props是从父组件传递过来的,只能读取,不能修改父组件中的值

data是子组件私有的,可读可写 

Vue的component标签

作用

可以在一个组件上进行多样化渲染。例如:选项卡

is属性

    <div id="father">
        <component is="one"></component>
        <component is="two"></component>
    </div>
    <script>
        Vue.component('one', {
            template: `
            <div>我是第一个组件</div>
            `
        })
        Vue.component('two', {
            template: `
            <div>我是第二个组件</div>
            `
        })
        let vm = new Vue({
            el: "#father"
        })
    </script>

在这里插入图片描述

可以看到通过coponent的is属性可以绑定不同的组件,渲染不同的模板。

那么我们是不是可以通过这个属性来完成一个属性多种模板的效果呢

   <div id="app">
             <button @click="onclick('hc-c')">显示第一个</button>
             <button @click="onclick('hc-b')">显示第二个</button>
             
            <component :is="name"></component>    
    </div>
    <script>
        Vue.component('hc-c', {
            template: `
                <div>我是第一个</div>
            `
        })
        Vue.component('hc-b', {
            template: `
                <div>我是第二个</div>
            `
        })
        let vm = new Vue({
            el: "#app",
            data:{
                name:''
            },
            methods:{
                onclick(item){
                    this.name = item;
                }
            }
        })
    </script>

在这里插入图片描述

在这里插入图片描述

可以看到,通过这个is属性,我们可以达到选项卡的效果

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

相关文章

  • Vue中实现路由跳转传参的4种方式

    Vue中实现路由跳转传参的4种方式

    本文详尽的讲了在Vue项目中,如何实现路由跳转传参的4四种方式(2大路由跳转方式,每种方式包括4种路由传参实现形式),以及每种方式中实现路由跳转包括路由传参的方法的各种写法,需要的朋友可以参考下
    2024-04-04
  • Vue项目每次发版后要清理浏览器缓存问题解决办法

    Vue项目每次发版后要清理浏览器缓存问题解决办法

    最近项目更新频繁,每次一更新客户都说还跟之前的一样,一查原因是因为客户没有清空浏览器的缓存,所以为了方便客户看到最新版本,开始调研再发布新版本后自动清理缓存,这篇文章主要给大家介绍了关于Vue项目每次发版后要清理浏览器缓存问题的解决办法,需要的朋友可以参考下
    2024-02-02
  • vue2.x中h函数(createElement)与vue3中的h函数详解

    vue2.x中h函数(createElement)与vue3中的h函数详解

    h函数本质就是createElement(),h函数其实是createVNode的语法糖,返回的就是一个Js普通对象,下面这篇文章主要给大家介绍了关于vue2.x中h函数(createElement)与vue3中h函数的相关资料,需要的朋友可以参考下
    2022-12-12
  • vue 出现data-v-xxx的原因及解决

    vue 出现data-v-xxx的原因及解决

    这篇文章主要介绍了vue 出现data-v-xxx的原因及解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • 在Vue3中处理异步API调用并更新表单数据的方法示例

    在Vue3中处理异步API调用并更新表单数据的方法示例

    这篇文章主要介绍了如何在Vue3中处理异步API调用并更新表单数据(附Demo),文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-06-06
  • Vue下拉框双向联动效果的示例代码

    Vue下拉框双向联动效果的示例代码

    这篇文章主要介绍了Vue下拉框双向联动效果,实现联动,大家都知道在vue的页面中,想要实现多个<el-select 下拉框的值动态改变,必须要调用@change 函数,具体操作方法跟随小编一起学习下吧
    2022-04-04
  • vue-router实现编程式导航的代码实例

    vue-router实现编程式导航的代码实例

    今天小编就为大家分享一篇关于vue-router实现编程式导航的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • vue实现视频上传功能

    vue实现视频上传功能

    这篇文章主要为大家详细介绍了vue实现视频上传功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • Vue3中reactive与ref函数使用场景

    Vue3中reactive与ref函数使用场景

    这篇文章主要为大家介绍了Vue3 中有场景是 reactive 能做而 ref 做不了的使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Vue2.x 项目性能优化之代码优化的实现

    Vue2.x 项目性能优化之代码优化的实现

    这篇文章主要介绍了Vue2.x 项目性能优化之代码优化的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03

最新评论