prop 使用场景

2022-02-23  本文已影响0人  今夜秋风和

prop 的背景

在前端分模块的应用中,会涉及到父子组件之间的数据传递,然后子组件接收到数据开始进行一些业务处理,这种场景下,使用vue props 就可以解决;

如何使用

   父组件定义:
   <child msg="hello"></child>
  子组件定义所接收的msg 属性:
  props: {
    msg: {
        type:String,
        default: ' '
   }
 },   
<div>
   <h1>child接收字符-msg {{ msg }}</h1>
 </div>       

使用动态传递数据 和静态传递区别在于父组件的数据传递增加v-bind 支持:

  父组件定义:
  <child v-bind:msg="msg"></child> msg 为动态变量,这样传递的数据更为灵活

2.子组件可以对外提供一个获取数据方法,父组件通过ref 来获取子组件数据:
关于ref 说明: ref 被用来给元素或子组件注册引用信息, 引用信息会注册在父组件的$ref 对象上,如果作用在标签元素上,那么为一个dom 节点,如果作用在组件上,为一个组件实例;

 子组件定义:
    method:{
        getValue(){
           return this.transferInfo;
     },
   }
父组件中引入子组件:
 <transfer-file  :fileList="fileList" ref="TransferFile"></transfer-file> 
  method:{
      getBasicValue(){
         const transferInfo = this.$refs.TransferFile.getValue();
         console.log('父组件中获取子组件的数据',transferInfo);
         return this.transferInfo;
   },
 }
上一篇 下一篇

猜你喜欢

热点阅读