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.
Vereinfachen Sie das bedingte UI-Rendering basierend auf Requisiten oder Status.
const Greeting = ({ isLoggedIn }) => isLoggedIn ? <h1>Welcome!</h1> : <h1>Please log in</h1>;
Geben Sie Standardwerten für Requisiten an, um undefinierte Fehler zu vermeiden.
const Button = ({ label = "Click Me" }) => <button>{label}</button>;
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);
Benutzereingabeereignisse direkt inline verarbeiten.
const Input = () => <input onChange={e => console.log(e.target.value)} />;
Übergeben Sie alle Requisiten mühelos an eine Komponente.
const Button = props => <button {...props} />;
CSS-Klassen dynamisch basierend auf Requisiten zuweisen.
const Alert = ({ type }) => <div className={`alert ${type}`}>Alert Message</div>;
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>;
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>;
Sicherer Zugriff auf tief verschachtelte Objekteigenschaften.
const UserProfile = ({ user }) => <p>{user?.name || "Guest"}</p>;
Komponenten oder Elemente bedingt rendern.
const ErrorMessage = ({ error }) => error && <p>{error.message}</p>;
Komponenten als Requisiten für wiederverwendbare Verpackungen übergeben.
const Wrapper = ({ Component }) => <Component />;
Führen Sie Effekte während der Komponentenmontage nur einmal aus.
useEffect(() => console.log("Mounted"), []);
Benutzereingaben entprellen, um die Leistung zu verbessern.
const Input = ({ onChange }) => <input onChange={e => debounce(onChange(e.target.value), 300)} />;
Führen Sie neue Statusaktualisierungen in den vorhandenen Status ein.
const [state, setState] = useState({}); const updateState = updates => setState(prev => ({ ...prev, ...updates }));
Verwenden Sie destrukturierte Requisiten für saubereren Code.
const Greeting = ({ name }) => <h1>Hello, {name}</h1>;
Merken Sie sich Funktionen, um unnötige Neuerstellungen zu vermeiden.
const handleClick = useCallback(() => console.log("Clicked"), []);
Erstellen Sie prägnante benutzerdefinierte Hooks für wiederverwendbare Logik.
const useToggle = initialValue => useState(initialValue).reduce((state, setState) => [state, () => setState(!state)]);
Gruppieren Sie mehrere Elemente, ohne zusätzliche DOM-Knoten hinzuzufügen.
const FragmentExample = () => <><p>First</p><p>Second</p></>;
Zugriff auf Kontextwerte mithilfe einer Verbraucherkomponente.
const Greeting = ({ isLoggedIn }) => isLoggedIn ? <h1>Welcome!</h1> : <h1>Please log in</h1>;
Stellen Sie Standardfunktionen als Requisiten bereit, um Laufzeitfehler zu verhindern.
const Button = ({ label = "Click Me" }) => <button>{label}</button>;
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);
Komponenten dynamisch importieren, um eine bessere Leistung zu erzielen.
const Input = () => <input onChange={e => console.log(e.target.value)} />;
Untergeordnete Elemente in eine Fallback-Benutzeroberfläche für Fehler einschließen.
const Button = props => <button {...props} />;
Verwenden Sie das Render-Prop-Muster für flexible Komponenten.
const Alert = ({ type }) => <div className={`alert ${type}`}>Alert Message</div>;
Attribute bedingt auf der Grundlage der Logik anwenden.
const List = ({ items }) => <ul>{items.map((item, index) => <li key={index}>{item}</li>)}</ul>;
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>;
Eingabewerte einfach mit dem Status synchronisieren.
const UserProfile = ({ user }) => <p>{user?.name || "Guest"}</p>;
Daten mit Reduzieren in Elemente umwandeln.
const ErrorMessage = ({ error }) => error && <p>{error.message}</p>;
Hooks bedingt verwenden, ohne gegen Regeln zu verstoßen.
const Wrapper = ({ Component }) => <Component />;
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!