setNativeProps Verändern Sie den Wert für die Text-Komponente Reagieren Nativen Direkte Manipulation

Möchte ich direkt den Wert aktualisieren einer Komponente aufgrund von performance-Gründen.

render(){

<View>

<Text style={styles.welcome} ref={component => this._text = component}>
  Some Text
</Text>

<TouchableHighlight underlayColor='#88D4F5'
              style={styles.button}>
          <View>    
            <Text style={styles.buttonText}
                 onPress={this.useNativePropsToUpdate.bind(this)}>
              Iam the Child
            </Text>
          </View>  
</TouchableHighlight>

</View>
}

Dies ist die Methode, die ich verwenden, um die Aktualisierung der text-Komponente. Ich weiß nicht, ob ich die richtigen attribute/wie, um herauszufinden, welche attribute gesetzt werden:

  useNativePropsToUpdate(){
    this._text.setNativeProps({text: 'Updated using native props'});
  }

Im wesentlichen versucht den gleichen Ansatz Folgen, der von diesem Beispiel:
https://rnplay.org/plays/pOI9bA

Bearbeiten:
Wenn ich versuche, die explizit zuweisen, wird der aktualisierte Wert:

this._text.props.children = "updated"; 

( Ich weiß, das dies der richtige Weg, Dinge zu tun, die in RN ). Ich bekomme die Fehlermeldung "Cannot assign auf" nur Lesen " - Eigenschaft 'Kinder' von Objekt'#'"

Also vielleicht das ist, warum es kann nicht aktualisiert werden, die in RN für einige Grund ?

  • Verwenden Sie eine TextInput statt und stellen Sie den Wert mit this._text.setNativeProps( { text: 'Hi There!' } ).
InformationsquelleAutor Shivam Sinha | 2016-05-04
Schreibe einen Kommentar