美文网首页
JS异步解决父子组件传值问题

JS异步解决父子组件传值问题

作者: 念雅_a9ef | 来源:发表于2020-11-19 16:10 被阅读0次

业务场景:在父组件加载页面的时候,获取子组件中通过网络请求获取的值,
用到的hook:useEffect()、useRef()。

这里是父组件

const BaseAssestsTreeContext = createContext(); 
const myRefAssetMonitor=useRef()

//父组件关键useEffect
  useEffect(() => {
    console.log("====父页面,useEffect方法")
    console.log("===进来父页面去获取 getD()",myRefAssetMonitor.current.getD())
    setTimeout(()=>{
      if(groupId){
        queryAreaAsset(groupId);
      }else{
        console.log("===延时去获取 子页面的钩子方法 myRefAssetMonitor.current.getD()",myRefAssetMonitor.current)
        queryAreaAsset(myRefAssetMonitor.current.getD());
        setGroupId(myRefAssetMonitor.current.getD())
      }
    },300)
  }, [])
 <div className={style.bg}>
        <div className={style.bg_tree}>
          <BaseAssestsTreeContext.Provider>
            <BaseAssestsTree myContext={BaseAssestsTreeContext} myRef={myRefAssetMonitor}/>
          </BaseAssestsTreeContext.Provider>
        </div>
        <div />

这里是子组件

  useEffect(() => {
    console.log("====子页面  资产树 useEffect方法")
    tree();//这里获取网络请求
  }, []);

  //想暴露给父组件的值 
  useImperativeHandle(myRef, () => ({
    getD: () => {
      return defaultGroupId;
    }
  }));
父子组件渲染顺序和钩子函数值.png

相关文章

  • JS异步解决父子组件传值问题

    业务场景:在父组件加载页面的时候,获取子组件中通过网络请求获取的值,用到的hook:useEffect()、use...

  • react 组件传值

    一、父子传值 1.父组件 TodoList.js 2.子组件 TodoItem.js

  • Vue父子组件通信和双向绑定

    本篇文章主要介绍父子组件传值,组件的数据双向绑定。 1. 基础父子组件传值 父子组件传值,这是Vue组件传值最常见...

  • 组件之间的传值

    组件之间的传值,包括父子组件传值,兄弟组件之间的传值,其中父子组件包括父组件向子组件传值和子组件向父组件传值,现在...

  • vue 父子组件传值 $on sync v-model

    1、正常的父子组件传值2、使用sync 实现父子组件传值3、使用v-model实现父子组件传值

  • 组件间的通信

    一、父组件往子传值 父子组件传值,异步请求有可能渲染时报错异步请求时,数据还没有获取到但是此时已经渲染节点了。应该...

  • (VUE3) 四、组件传值(父子组件传值 & 祖孙组件传值 &v

    1.父子组件传值 vue2中的父子组件传值:父组件: 子组件: vue3中的父子组件传值: 还是用props接收父...

  • Hooks - useContext

    useContext 解决的是父子组件传值的问题,它可以跨越组件层级去传递数据 注意 useContext 和 r...

  • 3.组件传值 - service传值

    angular 组件service传值 父子组件相互传值 子组件如果想返回去传值给父组件,父子组件相互传值需要使用...

  • 组件通信

    vue传值可分为父子之间传值、兄弟组件之间传值、跨代组件之间传值 1.父子之间传值:可以使用$emit/props...

网友评论

      本文标题:JS异步解决父子组件传值问题

      本文链接:https://www.haomeiwen.com/subject/qmhliktx.html