How can you access the state and dispatch from Context in a child component?
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: "const { state, dispatch } = useContext(CountContext);". Mẫu thường gặp là component cha dùng useReducer rồi truyền một đối tượng gồm state và dispatch vào prop value của CountContext.Provider; component con gọi useContext(CountContext) để nhận chính đối tượng đó và phân rã lấy hai khoá state, dispatch. "const [state, dispatch] = useContext(CountContext);" dùng ngoặc vuông để phân rã mảng, chỉ đúng nếu value là mảng; với value là đối tượng, phân rã mảng sẽ ném lỗi vì đối tượng không lặp được. "const { state, dispatch } = CountContext;" phân rã thẳng đối tượng context do createContext tạo ra; đối tượng này chỉ có Provider và Consumer chứ không chứa state hay dispatch, nên cả hai ra undefined. "const state = CountContext.state;" cũng đọc thuộc tính trên đối tượng context nên ra undefined; giá trị hiện hành chỉ lấy được qua useContext hoặc Consumer.
Cùng phần 6
Find the bug in the following React code: const [items, setItems] = useState([]); const addItem = () => { items.push('new'); setItems(items); };Có lời giảiCâu hỏiWhich is the correct way to consume context in a functional component using the "useContext" hook?Có lời giảiCâu hỏiIn the useEffect hook, how many milliseconds would you wait using setTimeout to perform a side effect after 2 seconds?Có lời giảiCâu hỏiCả 24 câu của chủ đề24 câu