调用组件时,如何让ts提示组件内部暴露的方法?
来源:3-15 useContext - 解决多层传递属性的灵丹妙药

慕粉8564437
2021-08-24
既然组件的参数里,我们可以用React.FC里设置接口参数,在引入组件的时候自动提示参数;那能不能在给组件设置ref的时候,配合组件内部的useImperativeHandle和forwardRef,调用组件内部暴露方法的时候,自动提示方法的名称?
——————————————————
我在开发一个转盘抽奖的组件,参数接口和对外暴露的方法的接口如下
在导入组件的时候,输入arrowStyle会有自动补全提示;
我想在调用组件内部方法的时候,也有自动提示,但似乎只有在声明RefObject类型的时候才会出现自动补全的提示。
所以我想请问老师,有没有好的方法,让我不用去使用组件内部的接口,就能有内部方法的提示?
写回答
2回答
-
同学你好 我获取ref 类型就是和你一样的方法来完成的。受限于 ts type assertion 的特性,我没有想到其他的形式可以完成这个功能。
// input export const Input = forwardRef<HTMLInputElement, InputProps>((props, ref) => {}) // 使用的组件 需要确定他的类型 const input = useRef<HTMLInputElement>(null) // input.current 获得了正确的类型 <Input ref={input} />
对于这个问题,我今明两天可以再调研一下,看看是否能实现你的要求。
012021-11-08 -
张轩
2021-08-25
同学你好 抱歉没有特别理解你的意思 请问是否能提供简单的示例代码来表达一下你的意思?这样有助于更好的理解问题的描述
012021-08-25
相似问题