Which of the following is the correct way to pass a function as a prop in React?
4 phương ánCó giải thích
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "
<Child onClick={
handleClick
}
/>". Để truyền hàm làm prop, đặt chính tham chiếu hàm trong ngoặc nhọn, không kèm dấu gọi hàm; Child nhận prop onClick và tự gọi nó khi có sự kiện, chẳng hạn gắn vào nút bên trong. Tên onClick theo quy ước đặt tên prop sự kiện là on cộng tên sự kiện. Cần nói thẳng: "
<Child handleClick={
handleClick
}
/>" cũng truyền đúng một hàm, chỉ khác tên prop, và trong Child dùng props.handleClick vẫn chạy; nó không sai về cơ chế, chỉ lệch quy ước đặt tên prop sự kiện mà đáp án này theo. "
<Child onClick={
handleClick()
}
/>" sai vì có dấu ngoặc tròn nên handleClick bị gọi ngay mỗi lần cha render, prop nhận giá trị trả về chứ không phải hàm, và nếu hàm đổi state sẽ gây vòng render vô hạn. "
<Child handleClick={
handleClick()
}
/>" mắc cùng lỗi gọi hàm ngay khi render, chỉ khác tên prop.
Cùng phần 4
How can you ensure that a prop is passed as an array with at least one element?Có lời giảiCâu hỏiHow can you pass parameters to an event handler in React?Có lời giảiCâu hỏiWhich of the following is used to pass a function from a parent component to a child component?Có lời giảiCâu hỏiCả 40 câu của chủ đề40 câu