Ich schreibe eine React Native-Komponente für eine Bibliothek, und ich möchte Benutzer in der Lage sein, es mit der style
-Eigenschaft, wie React.View
und anderen integrierten Komponenten zu stylen.Erhalten Sie CSS-Eigenschaftswerte aus einer "style" prop-Komponente
Da jedoch meine Komponente tatsächlich aus ein paar verschachtelte Ansichten besteht, muss ich einige Berechnungen durchführen, um herauszufinden, welches Styling auf die inneren setzen. Zum Beispiel muss ich möglicherweise die Größe eines Bildes basierend auf der Dicke eines Rahmens anpassen oder eine Hervorhebungsfarbe basierend auf der gegebenen Textfarbe anpassen oder auf andere Weise ein Stück Styling von einem anderen Stück Styling ableiten .
Um dies zu tun, ich brauche die eigentlichen CSS-Eigenschaften extrahieren zu können (wie borderWidth: 2
oder backgroundColor: 'pink'
) aus, was auch immer als style
prop geben wird. Dies ist in Ordnung, solange es als einfaches Objekt kommt, aber es kann auch das Ergebnis eines Aufrufs an React.StyleSheet.create
sein. Dies scheint ein undurchsichtiges Objekt zu sein, bei dem alle Selektoren einfach numerischen IDs zugeordnet sind.
Wie kann ich diese lösen und die tatsächlichen CSS-Eigenschaften erhalten, um etwas komplizierter mit ihnen als einfach nur weiter zu einem View
?
Diese Griffe nur den Fall, in dem, was übergeben wird, wie die 'style' Stütze der Rückgabewert von' Reagieren ist. StyleSheet.create() ', aber es gibt viel mehr gültige Dinge, die als' Stil' weitergegeben werden können. –