如何在运行函数之前等待变量初始化? (反应)

时间:2019-10-03 12:35:32

标签: javascript reactjs

我使用一个从浏览器中的扩展接收数据的变量从useEffect()调用该函数。但是函数在初始化之前调用了一个值。如何等待变量初始化?然后调用函数...我需要先获取valueFromExtention,然后调用doSomething()

const myFunction = () => {
 const valueFromExtention = window.objectFromExtension.someProp;
 doSomething(valueFromExtention);
}

UseEffect(() => {
  myFunction();
}, [])

2 个答案:

答案 0 :(得分:0)

只需编写条件逻辑来检查值。

    useEffect(() => {
        if(typeof value !== "undefined"){
         //code
        }                   
    });

答案 1 :(得分:0)

尝试以下

const myFunction = (value) => doSomething(value);

UseEffect(() => {
  const valueFromExtention = window.objectFromExtension.someProp;
  if(valueFromExtention)
      myFunction(valueFromExtention);
}, [])