javascript - React ve TypeScript'te boolean durumu nasıl değiştirilir?
React ve TypeScript'e yeniyim.
Bir boolean durumu (true/false) bir işleyici fonksiyon ile değiştirmek istiyorum. ES6'da bunu nasıl yapacağım hakkında diğer yazıları okudum ama TypeScript'te bunu nasıl başaracağım konusunda net değilim.
Şu ana kadar sahip olduğum:
const MyComponent = () => {
const [collapseUpper, setCollapseUpper] = React.useState(true);
const handleCollapse = () => {
collapseUpper = !setCollapseUpper;
};
return (
<Link onClick={handleCollapse}>More</Link>
<Collapse in={collapseUpper}>
//content
Ama çalıştırmayı başaramıyorum.
Biri bana doğru yönü gösterebilir mi?
Cevap #1
İşte böyle yapılmalıdır:
const handleCollapse = () => {
setCollapseUpper(!collapseUpper);
};
Durumdaki herhangi bir güncellemeyi ele almak için setCollapseUpper'i çağırmanız gerekecek.
Dahası, durumu güncellemek için geri çağırma işlevini kullanabilirsiniz:
const handleCollapse = () => {
setCollapseUpper((prevState) => !prevState);
};
Cevap #2
değerini değiştirmelisiniz collapseUpper, setCollapseUpper değil:
const [collapseUpper, setCollapseUpper] = React.useState(true);
const handleCollapse = () => {
setCollapseUpper(!collapseUpper);
};
