Vue使用Props实现组件数据交互的示例代码

 更新时间:2024年06月30日 13:52:35   作者:初叙  
在Vue中,组件的props属性用于定义组件可以接收的外部数据,这些数据来自父组件并传递给子组件,本文给大家介绍了Vue使用Props实现组件数据交互,文中有详细的代码示例供大家参考,需要的朋友可以参考下

props可以是一个数组或对象,用于指定子组件接受的属性名称。通过在父组件中使用子组件时,通过属性的方式将数据传递给子组件,属性名即为在子组件中声明的props的属性名称。子组件可以在其模板中通过props属性访问父组件传递的数据。props的作用是向子组件传递数据,允许传递任意数量的prop和任意类型的prop。在Vue 3和TypeScript中,深入了解组件的Props是非常重要的,因为可以在组件的选项中使用props属性来定义Props的类型和验证规则。

使用如下:

1、在使用子组件的父组件传递数据

<RefreshBtn @onFreshEvent="getData" :newsRefresh="newsRefresh"/>

2、子组件数据应用,使用props确定接收数据的类型和默认值,在props中还可以进行数据校验。

<template>
    <button @click="refreshHandle">刷新</button>
    <p>父页面数据:{{newsRefresh}}</p>
</template>
 
<script>
export default {
    name: "RefreshBtn",
    props: {
        newsRefresh: {
            type: String,
            default: ""
        }
    },
    data() {
        return {
            target: 1
        }
    },
    methods: {
        refreshHandle() {
            this.$emit("onFreshEvent",this.target);
            this.target += 1;
        }
    }
}
</script>

props完整的校验写法:

props: {
  校验的属性名: {
    type: 类型,  // Number String Boolean ...
    required: true, // 是否必填
    default: 默认值, // 默认值
    validator (value) {
      // 自定义校验逻辑
      return 是否通过校验
    }
  }
},
<script>
export default {
  // 完整写法(类型、默认值、非空、自定义校验)
  props: {
    w: {
      type: Number,
      //required: true,
      default: 0,
      validator(val) {
        // console.log(val)
        if (val >= 100 || val <= 0) {
          console.error('传入的范围必须是0-100之间')
          return false
        } else {
          return true
        }
      },
    },
  },
}
</script>

到此这篇关于Vue使用Props实现组件数据交互的示例代码的文章就介绍到这了,更多相关Vue Props数据交互内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何在vue中使用jsx语法

    如何在vue中使用jsx语法

    本文主要介绍了如何在vue中使用jsx语法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • vue3调度器scheduler功能和用法详解

    vue3调度器scheduler功能和用法详解

    调度器是vue3响应式系统中一个非常重要的特性,可调度性指的是当trigger 动作触发副作用函数重新执行时,有能力决定副作用函数执行的时机、次数以及方式,本文通过代码示例给大家介绍调度器是什么,有什么功能,怎么使用,感兴趣的同学可以借鉴阅读
    2023-06-06
  • Vue基础popover弹出框编写及bug问题分析

    Vue基础popover弹出框编写及bug问题分析

    这篇文章主要为大家介绍了Vue基础popover弹出框编写及bug问题分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • vue关于this.$refs.tabs.refreshs()刷新组件方式

    vue关于this.$refs.tabs.refreshs()刷新组件方式

    这篇文章主要介绍了vue关于this.$refs.tabs.refreshs()刷新组件方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • vue实现GitHub的第三方授权方法示例

    vue实现GitHub的第三方授权方法示例

    本文主要介绍了vue实现GitHub的第三方授权,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Vue精美简洁登录页完整代码实例

    Vue精美简洁登录页完整代码实例

    这篇文章主要给大家介绍了关于Vue精美简洁登录页完整代码的相关资料,通过文中的方法大家可以使用实现简单的用户登录界面,下面通过示例代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • VUE 实现element upload上传图片到阿里云

    VUE 实现element upload上传图片到阿里云

    这篇文章主要介绍了VUE 实现element upload上传图片到阿里云,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • vue实现父子组件之间的通信以及兄弟组件的通信功能示例

    vue实现父子组件之间的通信以及兄弟组件的通信功能示例

    这篇文章主要介绍了vue实现父子组件之间的通信以及兄弟组件的通信功能,结合实例形式分析了vue.js组件间通信相关操作技巧,需要的朋友可以参考下
    2019-01-01
  • 解决vue请求接口第一次成功,第二次失败问题

    解决vue请求接口第一次成功,第二次失败问题

    这篇文章主要介绍了解决vue请求接口第一次成功,第二次失败问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Vben Admin 多标签页状态管理源码学习

    Vben Admin 多标签页状态管理源码学习

    这篇文章主要为大家介绍了Vben Admin 多标签页状态管理源码学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09

最新评论