具有forwardRef的子组件

时间:2020-05-13 06:43:43

标签: reactjs react-functional-component

我正在制作一个简单的UI组件及其子组件。

/* Checkbox.jsx */
const Checkbox = React.forwardRef((props, ref)=>{
  return (
    <input type="checkbox" ref={ref} />
  ) 
});
const Group = (props) => (<div>Group</div>);

Checkbox.Group = Group;
export default Checkbox;

它不适用于React.forwardRef()

在没有React.forwardRef()的情况下,此代码很好用,但我也想使用forwardRef()

我想这样使用它

function App(){
  return (
    <div>
      <Checkbox />
      <Checkbox.Group />
    </div>
  )
}

谢谢。

1 个答案:

答案 0 :(得分:0)

您尝试单独导出它们吗?

/* Checkbox.jsx */
const Checkbox = React.forwardRef((props, ref)=>{
  return (
    <input type="checkbox" ref={ref} />
  ) 
});
const Group = (props) => (<div>Group</div>);

export funcs = {
Checkbox,
Group
}

export default funcs;

并在父级中:

import funcs from './Checkbox.jsx';

function App(){
  return (
    <div>
      <funcs.Checkbox />
      <funcs.Group />
    </div>
  )
}