Heim > Web-Frontend > js-Tutorial > Reagieren Sie auf Einzeiler, um Ihre Codierungseffizienz zu steigern

Reagieren Sie auf Einzeiler, um Ihre Codierungseffizienz zu steigern

Susan Sarandon
Freigeben: 2024-12-22 01:20:26
Original
485 Leute haben es durchsucht

React One-Liners to Enhance Your Coding Efficiency

React ist eine leistungsstarke JavaScript-Bibliothek zum Erstellen von Benutzeroberflächen. Obwohl seine Flexibilität eine seiner größten Stärken ist, kann es manchmal zu ausführlichem Code führen. Glücklicherweise gibt es viele Möglichkeiten, gängige Muster in React mit prägnanten, effizienten Einzeilern zu vereinfachen. In diesem Artikel werden wir 30 nützliche React-Einzeiler untersuchen, die Ihren Code sauberer und effizienter machen. Zu jedem Beispiel gibt es eine kurze Erklärung, um seine Verwendung hervorzuheben.

1. Bedingtes Rendern

Vereinfachen Sie das bedingte UI-Rendering basierend auf Requisiten oder Status.

const Greeting = ({ isLoggedIn }) => isLoggedIn ? <h1>Welcome!</h1> : <h1>Please log in</h1>;
Nach dem Login kopieren
Nach dem Login kopieren

2. Standard-Requisiten

Geben Sie Standardwerten für Requisiten an, um undefinierte Fehler zu vermeiden.

const Button = ({ label = "Click Me" }) => <button>{label}</button>;
Nach dem Login kopieren
Nach dem Login kopieren

3. Inline-Stile

Wenden Sie dynamische Stile direkt mithilfe von JavaScript-Objekten an.

const Box = ({ size }) => <div>



<h3>
  
  
  4. Functional Updates in State
</h3>

<p>Use functional updates to access the latest state.<br>
</p>

<pre class="brush:php;toolbar:false">const [count, setCount] = useState(0);
const increment = () => setCount(prev => prev + 1);
Nach dem Login kopieren
Nach dem Login kopieren

5. Ereignisbehandlung

Benutzereingabeereignisse direkt inline verarbeiten.

const Input = () => <input onChange={e => console.log(e.target.value)} />;
Nach dem Login kopieren
Nach dem Login kopieren

6. Verteilen Sie Requisiten

Übergeben Sie alle Requisiten mühelos an eine Komponente.

const Button = props => <button {...props} />;
Nach dem Login kopieren
Nach dem Login kopieren

7. Dynamische Klassen

CSS-Klassen dynamisch basierend auf Requisiten zuweisen.

const Alert = ({ type }) => <div className={`alert ${type}`}>Alert Message</div>;
Nach dem Login kopieren
Nach dem Login kopieren

8. Array-Zuordnung

Ordnen Sie ein Array zu, um eine Liste von Elementen zu generieren.

const List = ({ items }) => <ul>{items.map((item, index) => <li key={index}>{item}</li>)}</ul>;
Nach dem Login kopieren
Nach dem Login kopieren

9. Array-Filterung

Filtern Sie ein Array und rendern Sie nur die passenden Elemente.

const FilteredList = ({ items }) => <ul>{items.filter(item => item.active).map(item => <li key={item.id}>{item.name}</li>)}</ul>;
Nach dem Login kopieren
Nach dem Login kopieren

10. Optionale Verkettung

Sicherer Zugriff auf tief verschachtelte Objekteigenschaften.

const UserProfile = ({ user }) => <p>{user?.name || "Guest"}</p>;
Nach dem Login kopieren
Nach dem Login kopieren

11. Kurzschlussbewertung

Komponenten oder Elemente bedingt rendern.

const ErrorMessage = ({ error }) => error && <p>{error.message}</p>;
Nach dem Login kopieren
Nach dem Login kopieren

12. Komponente als Prop

Komponenten als Requisiten für wiederverwendbare Verpackungen übergeben.

const Wrapper = ({ Component }) => <Component />;
Nach dem Login kopieren
Nach dem Login kopieren

13. UseEffect mit Abhängigkeit

Führen Sie Effekte während der Komponentenmontage nur einmal aus.

useEffect(() => console.log("Mounted"), []);
Nach dem Login kopieren

14. Entprellter Eingang

Benutzereingaben entprellen, um die Leistung zu verbessern.

const Input = ({ onChange }) => <input onChange={e => debounce(onChange(e.target.value), 300)} />;
Nach dem Login kopieren

15. Staaten fusionieren

Führen Sie neue Statusaktualisierungen in den vorhandenen Status ein.

const [state, setState] = useState({});
const updateState = updates => setState(prev => ({ ...prev, ...updates }));
Nach dem Login kopieren

16. Destrukturierte Requisiten

Verwenden Sie destrukturierte Requisiten für saubereren Code.

const Greeting = ({ name }) => <h1>Hello, {name}</h1>;
Nach dem Login kopieren

17. Auswendig gelernter Rückruf

Merken Sie sich Funktionen, um unnötige Neuerstellungen zu vermeiden.

const handleClick = useCallback(() => console.log("Clicked"), []);
Nach dem Login kopieren

18. Custom Hook One-Liner

Erstellen Sie prägnante benutzerdefinierte Hooks für wiederverwendbare Logik.

const useToggle = initialValue => useState(initialValue).reduce((state, setState) => [state, () => setState(!state)]);
Nach dem Login kopieren

19. Inline-Fragment

Gruppieren Sie mehrere Elemente, ohne zusätzliche DOM-Knoten hinzuzufügen.

const FragmentExample = () => <><p>First</p><p>Second</p></>;
Nach dem Login kopieren

20. Kontextkonsument

Zugriff auf Kontextwerte mithilfe einer Verbraucherkomponente.

const Greeting = ({ isLoggedIn }) => isLoggedIn ? <h1>Welcome!</h1> : <h1>Please log in</h1>;
Nach dem Login kopieren
Nach dem Login kopieren

21. Standard-Funktions-Requisiten

Stellen Sie Standardfunktionen als Requisiten bereit, um Laufzeitfehler zu verhindern.

const Button = ({ label = "Click Me" }) => <button>{label}</button>;
Nach dem Login kopieren
Nach dem Login kopieren

22. Verhindern Sie Zahlungsausfälle bei Veranstaltungen

Standardverhalten direkt in Ereignishandlern verhindern.

const Box = ({ size }) => <div>



<h3>
  
  
  4. Functional Updates in State
</h3>

<p>Use functional updates to access the latest state.<br>
</p>

<pre class="brush:php;toolbar:false">const [count, setCount] = useState(0);
const increment = () => setCount(prev => prev + 1);
Nach dem Login kopieren
Nach dem Login kopieren

23. Lazy Loaded Components

Komponenten dynamisch importieren, um eine bessere Leistung zu erzielen.

const Input = () => <input onChange={e => console.log(e.target.value)} />;
Nach dem Login kopieren
Nach dem Login kopieren

24. Inline-Fehlergrenze

Untergeordnete Elemente in eine Fallback-Benutzeroberfläche für Fehler einschließen.

const Button = props => <button {...props} />;
Nach dem Login kopieren
Nach dem Login kopieren

25. Requisiten rendern

Verwenden Sie das Render-Prop-Muster für flexible Komponenten.

const Alert = ({ type }) => <div className={`alert ${type}`}>Alert Message</div>;
Nach dem Login kopieren
Nach dem Login kopieren

26. Bedingtes Attribut

Attribute bedingt auf der Grundlage der Logik anwenden.

const List = ({ items }) => <ul>{items.map((item, index) => <li key={index}>{item}</li>)}</ul>;
Nach dem Login kopieren
Nach dem Login kopieren

27. Dynamische Importe

Module basierend auf Bedingungen dynamisch laden.

const FilteredList = ({ items }) => <ul>{items.filter(item => item.active).map(item => <li key={item.id}>{item.name}</li>)}</ul>;
Nach dem Login kopieren
Nach dem Login kopieren

28. Kontrollierte Komponenten

Eingabewerte einfach mit dem Status synchronisieren.

const UserProfile = ({ user }) => <p>{user?.name || "Guest"}</p>;
Nach dem Login kopieren
Nach dem Login kopieren

29. Array-Reduzierung zum Rendern

Daten mit Reduzieren in Elemente umwandeln.

const ErrorMessage = ({ error }) => error && <p>{error.message}</p>;
Nach dem Login kopieren
Nach dem Login kopieren

30. Bedingte Haken

Hooks bedingt verwenden, ohne gegen Regeln zu verstoßen.

const Wrapper = ({ Component }) => <Component />;
Nach dem Login kopieren
Nach dem Login kopieren

Diese Einzeiler demonstrieren die Eleganz und Vielseitigkeit von React. Durch die Nutzung dieser prägnanten Muster können Sie saubereren, wartbareren Code schreiben, der die Produktivität steigert. Versuchen Sie, sie in Ihre Projekte zu integrieren, um den Unterschied zu erkennen!

Das obige ist der detaillierte Inhalt vonReagieren Sie auf Einzeiler, um Ihre Codierungseffizienz zu steigern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage