Menaip useRef dan Pengendali Peristiwa
Kendalikan rujukan DOM dan peristiwa sintetik dengan selamat.
Menaip useRef dan Pengendali Peristiwa ialah pelajaran TypeScript Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran TypeScript Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus TypeScript Academy merangkumi sejumlah 4 pelajaran.
Selamat Datang
Antara Muka Prop Komponen
interface ButtonProps {
label: string;
onClick: () => void;
disabled?: boolean;
}
function Button({ label, onClick, disabled }: ButtonProps) {
return <button onClick={onClick} disabled={disabled}>{label}</button>;
}FC berbanding Jenis Pulangan Eksplisit
const Card: React.FC<{title: string}> = ({ title }) => <div>{title}</div>;
// Or explicit:
function Card2({ title }: { title: string }): JSX.Element {
return <div>{title}</div>;
}Penaipan useState
const [count, setCount] = useState(0); // number
const [name, setName] = useState(''); // string
const [user, setUser] = useState<User | null>(null); // explicitPenaipan useReducer
type Action = { type: 'increment' } | { type: 'decrement' } | { type: 'reset'; value: number };
function reducer(state: number, action: Action): number {
switch (action.type) {
case 'increment': return state + 1;
case 'decrement': return state - 1;
case 'reset': return action.value;
}
}Penaipan useRef untuk DOM
const inputRef = useRef<HTMLInputElement>(null);
// Use:
if (inputRef.current) {
inputRef.current.focus();
}Penaipan Pengendali Peristiwa
function handleChange(e: React.ChangeEvent<HTMLInputElement>) {
console.log(e.target.value);
}
function handleClick(e: React.MouseEvent<HTMLButtonElement>) {
e.preventDefault();
}Komponen Generik
function List<T extends { id: number }>({ items }: { items: T[] }) {
return <ul>{items.map(i => <li key={i.id}>{JSON.stringify(i)}</li>)}</ul>;
}forwardRef dengan TypeScript
const Input = React.forwardRef<HTMLInputElement, InputProps>(
({ label, ...props }, ref) => (
<label>{label}<input {...props} ref={ref} /></label>
)
);Jenis Pulangan Cangkuk Tersuai
function useToggle(init: boolean): [boolean, () => void] {
const [state, setState] = useState(init);
return [state, () => setState(s => !s)];
}Konteks dengan TypeScript
const AuthContext = React.createContext<User | undefined>(undefined);
function useAuth(): User {
const ctx = useContext(AuthContext);
if (!ctx) throw new Error('useAuth must be used within AuthProvider');
return ctx;
}Semakan Pantas
Imbas Kembali
Pelajari TypeScript dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 101
- Pelajaran
- 352
Soalan Lazim
Adakah pelajaran “Menaip useRef dan Pengendali Peristiwa” percuma?
Ya — teks penuh “Menaip useRef dan Pengendali Peristiwa” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus TypeScript Academy, tingkat taraf kepada CoddyKit PRO. Kursus TypeScript Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Menaip useRef dan Pengendali Peristiwa”?
Kendalikan rujukan DOM dan peristiwa sintetik dengan selamat. Anda berlatih TypeScript Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan TypeScript Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran TypeScript Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Menaip useRef dan Pengendali Peristiwa” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran TypeScript Academy ini?
Ya. Setiap pelajaran TypeScript Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Menaip Props Komponen React
- Menaip useState dan useReducer
- Menaip useRef dan Pengendali Peristiwa
- Komponen Generik dan forwardRef