react/no-string-refs 정확성
작동 방식
이 규칙은 ref 속성에서 문자열 리터럴 사용을 비활성화하는 예전 동작을 막습니다.
왜 문제가 되는가?
React 16.3.0부터 ref 속성에서 문자열 리터럴 사용은 폐기되었습니다.
문자열 참조는 React 19에서 완전히 제거되었으며, 따라서 React 19 이상을 사용하는 경우 이 규칙을 비활성화할 수 있습니다.
예시
이 규칙에 대해 잘못된 코드 예시:
jsx
var Hello = createReactClass({
render: function () {
return <div ref="hello">안녕하세요, 세계.</div>;
},
});
var Hello = createReactClass({
componentDidMount: function () {
var component = this.refs.hello;
// ...component로 어떤 작업 수행
},
render: function () {
return <div ref="hello">안녕하세요, 세계.</div>;
},
});이 규칙에 대해 올바른 코드 예시:
jsx
var Hello = createReactClass({
componentDidMount: function () {
var component = this.hello;
// ...component로 어떤 작업 수행
},
render() {
return (
<div
ref={(c) => {
this.hello = c;
}}
>
안녕하세요, 세계.
</div>
);
},
});구성
이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.
noTemplateLiterals
type: boolean
기본값: false
문자열 리터럴 외에도 템플릿 리터럴 사용을 금지합니다.
사용 방법
구성 파일 또는 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음과 같이 사용할 수 있습니다:
json
{
"plugins": ["react"],
"rules": {
"react/no-string-refs": "error"
}
}bash
oxlint --deny react/no-string-refs --react-plugin