cari
Rumahhujung hadapan webtutorial jsAmalan Terbaik ReactJS: Menulis Kod Bersih dan Boleh Diselenggara

ReactJS Best Practices: Writing Clean and Maintainable Code

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.

  1. Atur Struktur Projek Anda Mewujudkan struktur folder yang jelas membantu anda dan pasukan anda mencari fail dengan mudah. Struktur biasa mengikut pendekatan "berasaskan ciri" di mana setiap ciri mempunyai folder sendiri:
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.

  1. Gunakan Komponen Berfungsi dan Cangkuk React Hooks telah menggantikan komponen kelas dalam banyak kes dan memudahkan kod dengan mengelakkan pengikatan ini. Komponen berfungsi biasanya lebih pendek, lebih mudah dibaca dan lebih mudah untuk diuji.

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>;
}
  1. 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.

  2. 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 id="Hello-name">Hello, {name}</h1>;
}

Greeting.propTypes = {
  name: PropTypes.string.isRequired,
};

Contoh dengan TypeScript:

type GreetingProps = {
  name: string;
};

const Greeting: React.FC<greetingprops> = ({ name }) => {
  return <h1 id="Hello-name">Hello, {name}</h1>;
};
</greetingprops>
  1. Pastikan Logik Komponen Asingkan daripada UI Untuk memastikan kod bersih dan boleh diuji, asingkan logik daripada pembentangan. Contohnya, gunakan cangkuk tersuai untuk mengendalikan logik dan mengurus keadaan, kemudian hantar data sebagai prop kepada komponen yang mengendalikan UI.

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>;
}
  1. Gunakan Penamaan Bermakna dan Konsisten Konvensyen penamaan yang konsisten menjadikan kod anda lebih mudah dibaca. Gunakan camelCase untuk fungsi dan pembolehubah, PascalCase untuk nama komponen dan nama deskriptif untuk semua prop dan pembolehubah keadaan.

Contoh:

// Good:
const isLoggedIn = true;
const userProfile = { name: "John", age: 30 };

// Poor:
const x = true;
const obj = { name: "John", age: 30 };
  1. Gunakan API Konteks Berhati-hati API Konteks React ialah alat yang berkuasa untuk mengurus keadaan secara global, tetapi penggunaan yang berlebihan boleh menjadikan kod anda rumit dan sukar untuk dinyahpepijat. Gunakannya dengan berhati-hati dan pertimbangkan untuk menggunakan perpustakaan pengurusan negeri seperti Redux atau Zustand untuk aplikasi yang lebih besar.

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);
}
  1. Hafal Fungsi dan Komponen Mahal React memaparkan semula komponen setiap kali komponen induk memaparkan semula. Untuk mengelakkan pemaparan semula yang tidak perlu, gunakan React.memo untuk komponen dan gunakanMemo/useCallback untuk fungsi.

Contoh:

src/
├── components/
│   └── Button/
│       ├── Button.js
│       ├── Button.css
│       └── index.js
├── pages/
│   └── Home.js
└── App.js
  1. Gunakan Modul CSS atau Komponen Bergaya Elakkan gaya global dengan menggunakan Modul CSS, komponen gaya atau alatan yang serupa. Ia membantu gaya skop kepada komponen individu, mengurangkan konflik gaya dan meningkatkan kebolehbacaan.

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 id="Hello-name">Hello, {name}</h1>;
}

Greeting.propTypes = {
  name: PropTypes.string.isRequired,
};

  1. Uji Komponen Anda Pengujian memastikan komponen anda berfungsi seperti yang diharapkan dan membantu menangkap pepijat lebih awal. Gunakan Pustaka Pengujian Jest dan React untuk menulis ujian unit bagi komponen dan menyepadukan ujian ke dalam aliran kerja anda.

Contoh Asas dengan Pustaka Pengujian React:

type GreetingProps = {
  name: string;
};

const Greeting: React.FC<greetingprops> = ({ name }) => {
  return <h1 id="Hello-name">Hello, {name}</h1>;
};
</greetingprops>

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!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Jenis data JavaScript: Adakah terdapat perbezaan antara penyemak imbas dan nodej?Jenis data JavaScript: Adakah terdapat perbezaan antara penyemak imbas dan nodej?May 14, 2025 am 12:15 AM

Jenis data teras JavaScript adalah konsisten dalam penyemak imbas dan node.js, tetapi ditangani secara berbeza dari jenis tambahan. 1) Objek global adalah tetingkap dalam penyemak imbas dan global di Node.js. 2) Objek penampan unik Node.js, digunakan untuk memproses data binari. 3) Terdapat juga perbezaan prestasi dan pemprosesan masa, dan kod perlu diselaraskan mengikut persekitaran.

Komen JavaScript: Panduan untuk menggunakan // dan / * * /Komen JavaScript: Panduan untuk menggunakan // dan / * * /May 13, 2025 pm 03:49 PM

JavaScriptusestWotypesofcomments: Single-line (//) danMulti-line (//)

Python vs JavaScript: Analisis Perbandingan untuk PemajuPython vs JavaScript: Analisis Perbandingan untuk PemajuMay 09, 2025 am 12:22 AM

Perbezaan utama antara Python dan JavaScript ialah sistem jenis dan senario aplikasi. 1. Python menggunakan jenis dinamik, sesuai untuk pengkomputeran saintifik dan analisis data. 2. JavaScript mengamalkan jenis yang lemah dan digunakan secara meluas dalam pembangunan depan dan stack penuh. Kedua -duanya mempunyai kelebihan mereka sendiri dalam pengaturcaraan dan pengoptimuman prestasi yang tidak segerak, dan harus diputuskan mengikut keperluan projek ketika memilih.

Python vs JavaScript: Memilih alat yang sesuai untuk pekerjaanPython vs JavaScript: Memilih alat yang sesuai untuk pekerjaanMay 08, 2025 am 12:10 AM

Sama ada untuk memilih Python atau JavaScript bergantung kepada jenis projek: 1) Pilih Python untuk Sains Data dan Tugas Automasi; 2) Pilih JavaScript untuk pembangunan front-end dan penuh. Python disukai untuk perpustakaannya yang kuat dalam pemprosesan data dan automasi, sementara JavaScript sangat diperlukan untuk kelebihannya dalam interaksi web dan pembangunan stack penuh.

Python dan javascript: memahami kekuatan masing -masingPython dan javascript: memahami kekuatan masing -masingMay 06, 2025 am 12:15 AM

Python dan JavaScript masing -masing mempunyai kelebihan mereka sendiri, dan pilihan bergantung kepada keperluan projek dan keutamaan peribadi. 1. Python mudah dipelajari, dengan sintaks ringkas, sesuai untuk sains data dan pembangunan back-end, tetapi mempunyai kelajuan pelaksanaan yang perlahan. 2. JavaScript berada di mana-mana dalam pembangunan front-end dan mempunyai keupayaan pengaturcaraan tak segerak yang kuat. Node.js menjadikannya sesuai untuk pembangunan penuh, tetapi sintaks mungkin rumit dan rawan kesilapan.

Inti JavaScript: Adakah ia dibina di atas C atau C?Inti JavaScript: Adakah ia dibina di atas C atau C?May 05, 2025 am 12:07 AM

Javascriptisnotbuiltoncorc; it'saninterpretedlanguagethatrunsonenginesoftenwritteninc .1) javascriptwasdesignedasalightweight, interpratedlanguageforwebbrowsers.2)

Aplikasi JavaScript: Dari Front-End ke Back-EndAplikasi JavaScript: Dari Front-End ke Back-EndMay 04, 2025 am 12:12 AM

JavaScript boleh digunakan untuk pembangunan front-end dan back-end. Bahagian depan meningkatkan pengalaman pengguna melalui operasi DOM, dan back-end mengendalikan tugas pelayan melalui Node.js. 1. Contoh front-end: Tukar kandungan teks laman web. 2. Contoh backend: Buat pelayan Node.js.

Python vs JavaScript: Bahasa mana yang harus anda pelajari?Python vs JavaScript: Bahasa mana yang harus anda pelajari?May 03, 2025 am 12:10 AM

Memilih Python atau JavaScript harus berdasarkan perkembangan kerjaya, keluk pembelajaran dan ekosistem: 1) Pembangunan Kerjaya: Python sesuai untuk sains data dan pembangunan back-end, sementara JavaScript sesuai untuk pembangunan depan dan penuh. 2) Kurva Pembelajaran: Sintaks Python adalah ringkas dan sesuai untuk pemula; Sintaks JavaScript adalah fleksibel. 3) Ekosistem: Python mempunyai perpustakaan pengkomputeran saintifik yang kaya, dan JavaScript mempunyai rangka kerja front-end yang kuat.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Nordhold: Sistem Fusion, dijelaskan
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini