这是我的沙箱:https://stackblitz.com/edit/react-h1uaph

我的控制台返回了我


  ref.current为空


但我无法理解,因为我在函数参数中传递了ref。我已经读过我无法从render函数访问ref,也许可以比喻,对于return函数,它是相同的-在功能组件中?如果是这种情况,我该如何从功能组件访问引用?

这是我的摘录:

import React from "react"
import ReactDOM from "react-dom"

const accessRef=(elementRef)=>{
  if(elementRef && !elementRef.current) console.log("elementRef.current is null")

}

function App() {

  let child1=React.createRef();

  return(
        <div
          ref={child1}
          name="child1"
          className="circle_container pic2"
          style={accessRef(child1)}
        >  hello world
        </div>
  )
}

ReactDOM.render(<App/>, document.getElementById("root"))


任何提示都会很棒,
谢谢

最佳答案

const accessRef = async elementRef => {
  if (elementRef && !elementRef.current) {
    const foo = await elementRef;
    console.log(foo.current);
  }
};

10-07 12:33