#javascript #reactjs
#javascript #reactjs
Вопрос:
Мне интересно, есть ли способ добавить стили и атрибуты к компоненту react, используя синтаксис, подобный следующему.
const rect = <rect></rect>
rect.style.fill = "black"
rect.style.height = "50px"
rect.style.width = "50px"
Это не работает (или я бы не спрашивал), но есть ли что-то подобное?
Спасибо!
Комментарии:
1. Вы читали документы react? reactjs.org/docs/faq-styling.html
Ответ №1:
Это возможно, используя ссылки.
const { useEffect, useRef } = React;
const App = () => {
const ref = useRef(null);
const rect = <div ref={ref}></div>;
useEffect(() => {
ref.current.style.background = "black";
ref.current.style.height = "50px";
ref.current.style.width = "50px";
}, []);
return rect;
}
ReactDOM.render(<App />, document.getElementById("root"));
<script src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<div id="root"></div>