ReactJS ialah perpustakaan JavaScript yang berkuasa dan popular untuk membina antara muka pengguna yang dinamik. Walau bagaimanapun, apabila aplikasi anda berkembang, mengekalkan kod yang bersih dan teratur menjadi penting untuk memastikan ia berskala, cekap dan boleh dibaca. Berikut ialah beberapa amalan terbaik untuk membantu anda menulis kod React yang bersih dan boleh diselenggara.
src/ ├── components/ │ └── Button/ │ ├── Button.js │ ├── Button.css │ └── index.js ├── pages/ │ └── Home.js └── App.js
Memisahkan komponen mengikut ciri (atau tanggungjawab) boleh menjadikan pangkalan kod lebih modular dan lebih mudah untuk dinavigasi semasa ia berkembang.
Contoh:
// Instead of class component: class MyComponent extends React.Component { state = { count: 0 }; increment = () => { this.setState({ count: this.state.count + 1 }); }; render() { return <button onClick={this.increment}>{this.state.count}</button>; } } // Use functional component with hooks: import React, { useState } from 'react'; function MyComponent() { const [count, setCount] = useState(0); return <button onClick={() => setCount(count + 1)}>{count}</button>; }
Pecah Komponen
Komponen besar sukar diselenggara dan digunakan semula. Bertujuan untuk mencipta komponen kecil dan fokus yang masing-masing mengendalikan satu tugas. Jika komponen melakukan berbilang perkara, pertimbangkan untuk memecahkannya kepada subkomponen yang lebih kecil.
Gunakan PropTypes atau TypeScript
Penaipan statik React's PropTypes atau TypeScript boleh membantu menangkap ralat jenis lebih awal. Menentukan jenis prop yang dijangka menjadikan komponen lebih mudah diramal dan kurang terdedah kepada ralat.
Contoh dengan PropTypes:
import PropTypes from 'prop-types'; function Greeting({ name }) { return <h1>Hello, {name}</h1>; } Greeting.propTypes = { name: PropTypes.string.isRequired, };
Contoh dengan TypeScript:
type GreetingProps = { name: string; }; const Greeting: React.FC<GreetingProps> = ({ name }) => { return <h1>Hello, {name}</h1>; };
Contoh cangkuk tersuai:
import { useState, useEffect } from 'react'; function useFetchData(url) { const [data, setData] = useState(null); useEffect(() => { fetch(url) .then(response => response.json()) .then(data => setData(data)); }, [url]); return data; } // UI Component: function DataDisplay({ url }) { const data = useFetchData(url); return <div>{data ? data.title : 'Loading...'}</div>; }
Contoh:
// Good: const isLoggedIn = true; const userProfile = { name: "John", age: 30 }; // Poor: const x = true; const obj = { name: "John", age: 30 };
Contoh:
import React, { createContext, useContext, useState } from 'react'; const AuthContext = createContext(); export function AuthProvider({ children }) { const [isAuthenticated, setIsAuthenticated] = useState(false); return ( <AuthContext.Provider value={{ isAuthenticated, setIsAuthenticated }}> {children} </AuthContext.Provider> ); } export function useAuth() { return useContext(AuthContext); }
Contoh:
src/ ├── components/ │ └── Button/ │ ├── Button.js │ ├── Button.css │ └── index.js ├── pages/ │ └── Home.js └── App.js
Contoh dengan Modul CSS:
// Instead of class component: class MyComponent extends React.Component { state = { count: 0 }; increment = () => { this.setState({ count: this.state.count + 1 }); }; render() { return <button onClick={this.increment}>{this.state.count}</button>; } } // Use functional component with hooks: import React, { useState } from 'react'; function MyComponent() { const [count, setCount] = useState(0); return <button onClick={() => setCount(count + 1)}>{count}</button>; }
Contoh dengan Komponen Bergaya:
import PropTypes from 'prop-types'; function Greeting({ name }) { return <h1>Hello, {name}</h1>; } Greeting.propTypes = { name: PropTypes.string.isRequired, };
Contoh Asas dengan Pustaka Pengujian React:
type GreetingProps = { name: string; }; const Greeting: React.FC<GreetingProps> = ({ name }) => { return <h1>Hello, {name}</h1>; };
Kesimpulan
Dengan mengikuti amalan terbaik ini, anda boleh menulis kod React yang bersih, berskala dan mudah diselenggara. Menyusun fail, menggunakan komponen berfungsi, mengasingkan logik daripada UI dan menguji komponen hanyalah beberapa cara untuk menjadikan aplikasi React anda lebih cekap dan menyeronokkan untuk digunakan. Mula gunakan teknik ini dalam projek anda untuk meningkatkan kualiti kod anda dan menjadikan pembangunan masa depan lebih pantas dan menyeronokkan.
Atas ialah kandungan terperinci Amalan Terbaik ReactJS: Menulis Kod Bersih dan Boleh Diselenggara. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!