Reagieren Einheitlichen globalen Stilen
Ich bin neu mit Reagieren und ich verstehe die Vorteile der Komponenten-basierten, inline-styles. Aber ich Frage mich, ob es ist eine gute Weg, um irgendeine Art von globalen Stil. Beispielsweise würde ich gerne mit dem gleichen Text-und Button-Färbung im Laufe meiner app.
Eher als Wiederholung in jeder Komponente(und anschließend zu ändern in x Orten, wenn es sein muss), mein Erster Gedanke ist die Schaffung eines 'Basis' StyleSheet-Klasse in eine eigene Datei und importieren Sie es in meinen Komponenten.
Gibt es eine bessere oder mehr 'Reagieren' Weg?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie erstellen Sie eine wiederverwendbare stylesheet. Beispiel:
style.js
In der Komponente:
...dann:
import { StyleSheet } from 'react-native';
Erstellen Sie eine Datei für Ihre Arten (I. E.,
Style.js
).Hier ist ein Beispiel:
In einer der Dateien, die Sie verwenden möchten, Ihr Stil, fügen Sie den folgenden:
Wenn Sie nur wollte, um einige Globale Variablen, die Sie könnten versuchen.
AppStyles.js
index.ios.js
Können Sie auch versuchen,reagieren-native-extended-stylesheet, dass die globalen styling-Variablen:
Müssen Sie eine Datei erstellen, die zum speichern aller Stil in es wie "styles.js " und schreiben Sie den css-Typ-code, wie Sie benötigen
und jetzt können Sie den globalen Stil wie Sie sehen können
Versuchen meine Bibliothek reagieren-native-Stil-Tachyonen, die bietet Ihnen nicht nur Globale Stile, sondern ein design-first, responsive Layout-system, mit breiten und Höhen relativ zum root fontsize.
Externe CSS-Datei main.css
erstellen Sie eine Instanz der css-Datei der Komponente.
Alle diese Methoden, die direkt die Frage beantworten, aber es ist nicht der Weg, es zu tun. Diese Menschen stecken in der alten Weise zu denken, wo Sie im Stil der verfügbaren Elemente. In Reagieren, Sie machen Komponenten. Also, wenn Sie brauchen eine Basis-Komponente, die nicht vorhanden ist, machen Sie es. zum Beispiel:
und verwenden Sie dann
CustomText
überall stattText
. Sie können es auch tun, mitView
,div
,span
oder irgendetwas anderes.Werfen Sie einen Blick auf Shoutem Themen für Reagieren Nativen.
Hier ist, was Sie erhalten mit Shoutem Thema:
Globalen Stil, wo bestimmte Stil wird automatisch angewendet, um die Komponente durch Ihre style-name:
Aktivierung bestimmter Komponenten bestimmte Stil mit
styleName
(wie CSS-Klasse):Automatische Stil-Vererbung:
Verschachteltes Format für Komponenten zusammengesetzt:
Um es zu bekommen Arbeit, die Sie verwenden müssen
StyleProvider
, die wrapper-Komponente, die bietet Stil auf alle anderen Komponenten durch Kontext. Ähnlich ReduxStoreProvider
.Außerdem müssen Sie Ihre Komponente Stil mit
connectStyle
so immer die angeschlossene Komponente. Ähnlich Reduxconnect
.Können Sie die siehe Beispiel in der Dokumentation.
Eine Letzte Sache, wir haben auch Satz von Komponenten in unsere UI-ToolKit, die bereits angeschlossen sind, um Stil, so können Sie einfach importieren Sie und Stil in Ihre Globale style/theme.