当前位置: 代码网 > it编程>编程语言>Javascript > Vue使用Props实现组件数据交互的示例代码

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

2024年07月03日 Javascript 我要评论
props可以是一个数组或对象,用于指定子组件接受的属性名称。通过在父组件中使用子组件时,通过属性的方式将数据传递给子组件,属性名即为在子组件中声明的props的属性名称。子组件可以在其模板中通过pr

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数据交互内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com