#reactjs
#reactjs
Вопрос:
У меня есть этот код, который использует компонент на основе классов:
export default class Sidebar extends Component {
renderHello() {
return <h1>Hello</h1>
}
render() {
return (
<Wrapper>
{this.renderHello()}
</Wrapper>
);
}
}
Как вы можете видеть, я вызываю renderHello
render()
метод для создания h1
. Как я мог бы сделать это с помощью компонента на основе классов:
function Sidebar() {
{/* Should I write the function here?? */}
return (
<div>
{/* How to call a function here?? */}
</div>
)
}
Комментарии:
1. Использование то же самое, только без
this
, т.е.function renderHello() {...
и{renderHello()}
.
Ответ №1:
Вот как вы можете это сделать.
function Sidebar() {
const renderHello = () => <h1>Hello</h1>
return (
<div>
{renderHello()}
</div>
)
}
Комментарии:
1. В чем разница между
const
иfunction
дляrenderHello
?2. То, что мы здесь сделали, это использовали функцию со стрелкой, присвоив ее renderHello.
3. Так что в некотором смысле renderHello все еще является функцией
4. Я понимаю, но в чем разница между написанием
const renderHello = () => {}
иfunction renderHello() {}
? Это просто разница в синтаксисе?5. ОК. Спасибо. Ценю всю помощь!!