У меня есть компонент на основе класса реагирования с использованием динамических c ссылок. Мне нужно реорганизовать этот код для перехвата, используя useRef динамически.
export default class App extends Component {
navigate(item) {
if (item === 'home') {
Object.keys(this.refs).map(function(ref) {
if (ref.endsWith('ul') && !ref.startsWith(item)) {
this.refs[ref].style.borderLeftColor = '#fff';
}
}, this);
this.context.router.history.replace('/');
}
}
}
render() {
const {item} = this.props;
return (
<div>
<ul ref={item + 'ul'} onClick={() => { navigate(item);}}>
<span>{item}</span>
</ul>
</div>
)
}
}
Как изменить эту строку ref с useRef в перехватчиках, так как она немного запутана, особенно когда задано ref = {item + 'ul'} в качестве строки ref вместо ref = "itemref".