Vue中props用法介绍

 更新时间:2021年11月24日 09:07:16   作者:缘分锝天空  
这篇文章主要给大家分享的是 Vue中props用法介绍,​ 在Vue中通过props,可以将原本孤立的组件串联起来,也就是可以子组件可以接收父组件传递过来的data,下面我们一起进入文章看看内容的详细介绍吧,需要的朋友也可以参考一下

​前言:

在Vue中通过props,可以将原本孤立的组件串联起来,也就是可以子组件可以接收父组件传递过来的data,比如子组件想要引用父组件的数据,那么在props里面声明一个变量,这个变量就可以引用父元素的数据。

实例演示:

子组件:

<template>

  <div>

    <h3>我是{{name}},今年{{age}}岁,爱好:{{hobby}}</h3>,{{flag}}

  </div>

</template>



<script>

export default {

    name:'Cpn',

    // 简单接收

    /* props:['age','hobby','name'], */

    // 声明要接收的数据,声明时对接收的数据进行限制

    props:{

        name: {

            // 声明类型

            type:String,

            //声明是否必需

            require:true,

            // 声明默认值

            default:'默认值'

        },

        age:{

            type:Number,

            require:true,

            default:18

        },

        hobby:{

            type:String,

            require:false

        },

        flag:{

            type:Boolean,

            require:false

        }

    }

}

</script>

父组件:

<template>

  <div id="app">

    <!-- <cpn name='李明' age="22" hobby="打球"></cpn>

    <cpn name="小红" age="20" hobby="弹琴"></cpn> -->

    <cpn name='李明'></cpn>

    <cpn hobby="编程" :flag="flag"></cpn>

      <!--备注:如果要将当前组件data里的数据传递给子组件,需要通过v-bing:变量名=”变量名“的形式传递,如果传递的不是data里面的数据,就不用加绑定指令,即v-bind(可简写为:)-->

    <button @click="changeFlag">切换</button>

  </div>

</template>

<script>

import Cpn from './components/Cpn.vue'

export default {

  components: { Cpn },

  name: "App",

  data() {

    return {

      flag:false

    }

  },

  methods: {

    changeFlag(){

      console.log(this.flag)

      this.flag=!this.flag;

      console.log(this.flag)

    }

  },

}

</script>

运行上面的程序可以看到,当我们通过点击父组件的按钮切换某个值时,子组件接收的值也会相应变化。

子组件接收父组件的数据有两种接收方式:

  • 方式1:简单接收, 只需要给出所要接收的变量的名字即可
  • 方式2: 具体接收,给每个接收的变量选择性地指明数据类型,是否可为空,默认值

到此这篇关于 Vue中props用法介绍的文章就介绍到这了,更多相关 Vue中props用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue 组件中添加样式不生效的解决方法

    vue 组件中添加样式不生效的解决方法

    这篇文章主要介绍了vue 组件中添加样式不生效的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • vue之项目中如何封装loading加载效果

    vue之项目中如何封装loading加载效果

    这篇文章主要介绍了vue之项目中如何封装loading加载效果,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • vue实现行列转换的一种方法

    vue实现行列转换的一种方法

    这篇文章主要介绍了vue实现行列转换的一种方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 推荐一款简易的solid js消息UI库使用详解

    推荐一款简易的solid js消息UI库使用详解

    这篇文章主要为大家介绍了推荐一款简易的solid-js消息UI库使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue拖拽排序插件vuedraggable使用方法详解

    vue拖拽排序插件vuedraggable使用方法详解

    这篇文章主要为大家详细介绍了vue拖拽排序插件vuedraggable的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • vue3+typescript实现图片懒加载插件

    vue3+typescript实现图片懒加载插件

    这篇文章主要介绍了vue3+typescript实现图片懒加载插件,帮助大家更好的理解和使用vue,感兴趣的朋友可以了解下
    2020-10-10
  • 一文带你详细了解Vue中的v-for

    一文带你详细了解Vue中的v-for

    v-for循环遍历数据,永远不要把v-if和v-for同时用在同一个元素上,下面这篇文章主要给大家介绍了关于如何通过一文带你详细了解Vue中v-for的相关资料,需要的朋友可以参考下
    2022-10-10
  • 浅谈vue 单文件探索

    浅谈vue 单文件探索

    这篇文章主要介绍了浅谈vue 单文件探索,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Vue中使用jsencrypt进行RSA非对称加密的操作方法

    Vue中使用jsencrypt进行RSA非对称加密的操作方法

    这篇文章主要介绍了Vue中使用jsencrypt进行RSA非对称加密,在这里需要注意要加密的数据必须是字符串,对Vue RSA非对称加密相关知识感兴趣的朋友一起看看吧
    2022-04-04
  • Ant Design Vue Pro动态路由加载,服务器重启首页白屏问题

    Ant Design Vue Pro动态路由加载,服务器重启首页白屏问题

    这篇文章主要介绍了Ant Design Vue Pro动态路由加载,服务器重启首页白屏问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10

最新评论