首页 > 其他分享 >provide/reject多组件嵌套传值

provide/reject多组件嵌套传值

时间:2023-04-14 15:46:12浏览次数:31  
标签:provide export components reject 组件 传值

多组件嵌套传值
现在用组件A 、组件B、组件C三个组件
一、组件嵌套
1.组件A(相当于父组件),在组件A调用组件B
<template>
  <div>
  <componentb></componentb>
  </div> 
</template>
<script>
 import Componentb from '../components/componentb.vue' // 引用组件
 export default { 
  name: "ComponentA", //组件名称
  components:{ Componentb }, // 定义组
  provide: { valuea: "provide" } // 设置传值给组件B
}
</script>
2.组件B(相当于子组件),在组件B中调用组件C
<template>
  <div>
  <componentc></componentc>
  </div> 
</template>
<script>
 import Componentc from '../components/compoentc.vue' // 引用组件
 export default { 
  name: "ComponentB", //组件名称   
  components:{ Componentc }, // 定义组   
reject: ['value'], //获取父组件传递的值
  provide: { valueb: "provide" } // 设置传值给组件C
  data(){
    return: {
      providevalue:this.valuea
    }
  }
}
</script>

3.组件C(相当于孙组件)在组件c中获取值



<template>
  <div>
  {{valueb}} </div> </template> <script> export default {   name: "ComponentC", //组件名称
  reject:["valueb"], // 获取传值 } </script>


二、多层插槽嵌套组件同样适用
组件A
<template>
  <div>  
    <componentb>
       <componentc/>
    </componentb> </div> </template> <script> import Componentb from '../components/componentb.vue'
import Componentc from '../components/componentc.vue'
// ↑引用组件 export default {   name: "ComponentA", //组件名称   components:{ Componentb,Compoentc }, // 定义组   provide: { valuea: "provide" } // 设置传值 } </script>

组件B

<template>
  <div>
  <slot/>
  </div> 
</template>
<script>
 export default { 
  name: "ComponentB", //组件名称   
  components:{ Componentc }, // 定义组   
   reject: ['value'], //获取父组件传递的值
  provide: { valueb: this.providevalue }, // 设置传值给组件C 
  data(){
    return: {
      providevalue:this.valuea
    }
  }
} 
</script>

组件C

<template>
  <div>
  {{providevalue}}
  </div> 
</template>
<script>
 export default { 
  name: "ComponentC", //组件名称
  reject:["providevalue"], // 获取传值
}
</script>
 

标签:provide,export,components,reject,组件,传值
From: https://www.cnblogs.com/suka/p/17318377.html

相关文章

  • 传值与传址
    一、js基本数据类型 numberstringboolenundefinednullsymbol复制时复制的是栈地址,所以修改时为深拷贝,修改复制数据不会影响初始数据二、js引用数据类型 objectarrayfunction数据存储在堆内,复制时复制的是堆的地址,修改时为浅拷贝,只拷贝了内存地址,修改复制数据时,堆内......
  • 文件传递(需要调整页面以及页面传值调用,别想着抄袭我们啦)
    packageget;importorg.apache.commons.fileupload.FileItem;importorg.apache.commons.fileupload.disk.DiskFileItemFactory;importorg.apache.commons.fileupload.servlet.ServletFileUpload;importjavax.servlet.ServletException;importjavax.servlet.http.H......
  • SpringSecurity源码-构建ProviderManager
    简介在构建WenSecurity执行生命周期AbstractConfiguredSecurityBuilder#doBuild()方法中的init(),会执行到WebSecurityConfigurerAdapter#init(WebSecurityweb)方法,会去创建HttpSecurity。在创建HttpSecurity时调用authenticationManager()构建ProviderManager。 WebSecurityCo......
  • Pro Android学习笔记(九):了解Content Provider(下下)
    Contentprovider作为信息的读出,比较常见的还有文件的读写,最基础的就是二进制文件的的读写,例如img文件,音频文件的读写。在数据库中存放了该文件的路径,我们可以通过ContentProvider获得InputSream和OutputStream,实现对文件的操作。ProAndroid4.0提及有关内容,但语焉不详,可同时参考h......
  • Pro Android学习笔记(八):了解Content Provider(下中)
    在之前提供了小例子BookProvider,我们回过头看看如何将通过该ContentProvider进行数据的读取。(1)增加privatevoidaddBook(Stringname,Stringisbn,Stringauthor){/*从ContentProvider的insert()方法的参数可以看到,通过ContentValues来进行数据的传递。ContentValues是k......
  • Android学习笔记(四九):通过Content Provider访问数据
    在上次笔记中,我们编写了自己的Provider,这次笔记,我们将通过ContentProvider的Uri接口对数据进行访问,重写Android学习笔记(四二)中例子。在这里我们不在充分描述相关UI如何编写,可以到笔记(四二)中详细查看,重点讲述如何实现数据的访问。读取信息读取信息方式,在笔记(四七)中已经介绍,代码如下......
  • Android学习笔记(四八):提供自己的Content Provider
    在上一次的学习中,采用了原生的内容提供者Contact,Contact有多层映射关系,比较复杂,并非作为小例子的好选择,在本次学习中,我们将学习如何建立ContentProvider,并通过Uri进行增删改查。如果应用的数据只需自己使用,并不需要contentprovider,相反避免这样做,可直接访问数据;但是若希望数据可......
  • activity中传值给fragment
    /*//创建Fragment实例detailfragment=newdetail();//构建BundleBundlebundle=newBundle();//设置数据bundle.putString("account",this.account);//绑定Fragmentfragment.setArguments(bundle);FragmentManagerfragmentManager=getSupportFragmentManager();Fra......
  • dubbo线程池又被打爆(打满)了java.util.concurrent.RejectedExecutionException: Thread
    转载:https://blog.csdn.net/kevin_mails/article/details/121764780?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-121764780-blog-124236206.235%5Ev27%5Epc_relevant_recovery_v2&depth_1-utm_sourc......
  • ContentProvider的启动
    ContentProvider的工作离不开AMS(ActivityManagerService),事实上,四大组件的工作流程都离不开AMS。我们在创建一个ContentProvider的时候,除了新建一个类继承并重写方法,还需要在AndroidManifest中进行注册,而AndroidManifest就是AMS进行处理的。AndroidManifest会在当前应用被创建时进......