【发布时间】:2020-01-22 20:51:07
【问题描述】:
我在使用带有样式组件的 useRef 钩子时遇到了一些问题。
Linter 提醒我 Object is possibly 'null' 在 didMount useEffect 中。有什么想法吗?
这不是重复的,原因有两个:
- 旧答案是指在类组件中使用的
ref,这是在 React 钩子之前使用它的唯一方法, - 当前版本的样式化组件不再支持
innerRef属性。
这是我的组件的示例 sn-p:
import React, { useRef, useEffect } from 'react';
import styled from 'styled-components';
const StyledInput = styled.input`
background: transparent;
`
const MyForm = () => {
const inputRef = useRef(null);
useEffect(() => {
if (inputRef && inputRef.current) {
inputRef.current.focus(); //Object is possibly 'null'
}
}, []);
return (
<StyledInput ref={inputRef}/>
);
}
【问题讨论】:
-
@MatthewBarbara innerRef 不再被样式化组件支持
标签: reactjs typescript react-hooks styled-components