小编Iru*_*uss的帖子

如何使用 HOC 包装forwardRef 组件?

如何包装forwardRef 组件?

例如,在我的单元格编辑器中:

import React, {useEffect, forwardRef, useImperativeHandle, useRef} from "react";

export default forwardRef((props, ref) => {
    const inputRef = useRef();
    const { someProp } = props;
    useImperativeHandle(ref, () => {
        return {
            getValue: () => {
                return inputRef.current.value;
            }
        };
    });
    return <input type="text" ref={inputRef} someProp={someProp}/>;
})
Run Code Online (Sandbox Code Playgroud)

如果我想向 HOC 公开一个变量 (someProp),我该怎么做呢?

function someProps(WrappedComponent, someProp) {
    return (props) => <WrappedComponent {...props} someProp={someProp}/>
}

someProps(CellEditor, {propName: propValue});
Run Code Online (Sandbox Code Playgroud)

每当我尝试包装forwardedRef组件时,看起来引用都没有被正确识别

reactjs ag-grid ag-grid-react

7
推荐指数
1
解决办法
4653
查看次数

标签 统计

ag-grid ×1

ag-grid-react ×1

reactjs ×1