Wie funktioniert this.context in React?

8

Es ist keine offizielle API ( noch !), aber context kann in React Mixins sehr nützlich sein. Sein Verhalten und Inhalt sind jedoch für mich nicht völlig intuitiv.

Woher kommt der Inhalt von this.context ?

(Zum Zeitpunkt des Schreibens hat React die Version 0.12)

    
Alan H. 27.11.2014, 00:08
quelle

2 Antworten

7

Ich habe das auch früher untersucht. this.context ist eine Menge von Attributen, die implizit an die untergeordneten Elemente übergeben werden, anstatt die Eigenschaften explizit zu übergeben. Sie können sich die React-Testsuiten ansehen, um zu sehen, wie sie sich verhalten:

Tests /ReactCompositeComponent-test.js#L1101

Tests /ReactElement-test.js#L100

Ich fand diesen Artikel auch hilfreich, um einige der offengelegten Methoden und Verhaltensweisen zu verstehen: Ссылка

    
trekforever 27.11.2014 00:43
quelle
4

Wenn es Ihnen nichts ausmacht, habe ich einen Beitrag zu Reacts Kontext Ссылка

  

Kurz gesagt, ein Kontext ist ein Objekt mit Attributen, die implizit von einem Element an alle seine Kinder und Enkel weitergegeben werden.

     

Um Daten / Attribute mit untergeordneten Komponenten mit Kontext zu teilen, definiert eine Komponente die Attributnamen und Datentypen, die im Kontext verfügbar sind, indem das Attribut childContextTypes definiert wird. Außerdem muss die getChildContext-Methode definiert werden, die die Datenwerte von Attributen im Kontext zurückgibt. Die Schlüssel in childContextTypes müssen genau die gleichen Schlüssel in dem Objekt sein, die von der Methode getChildContext zurückgegeben werden.

     

Wenn eine untergeordnete Komponente Daten aus dem Kontext des übergeordneten Elements verwenden möchte, muss sie zuerst deklarieren, was sie explizit verwenden möchte, indem sie das Attribut contextTypes definiert.   contextTypes ist ein Objekt, das den Namen und den Typ der Attribute angibt, die es verwenden möchte.

    
David Lin 24.07.2015 07:34
quelle

Tags und Links