2016-08-16 8 views
1

Hey Leute, ich versuche, Modal auf Klick auf Kartenmarker zu zeigen, aber ich sehe kein Modal auf Marker Klick kann mir jemand helfen, was das Problem ist. Ich bin mit Modal von https://github.com/maxs15/react-native-modalboxModal wird nicht in reaktiv-nativ angezeigt?

Hier ist der Code:

import Modal from 'react-native-modalbox' 
openModal4(id) { 
    this.refs.modal4.open(); 
    } 

render(){ 
return(
<View style={style.mainContainer}> 
    <MapView 
     ref="map" 
     showUserLocation={true} 
     region={this.state.region} 
     onRegionChange={this.onRegionChange} 
     onRegionChangeComplete={this.onRegionChangeComplete} 
     style={styles.map} 
     rotateEnabled={false} 
     showsCompass={false} 
     > 
     {this.state.markers.map(function(marker){ 
     return(
      <MapView.Marker coordinate={marker.latlng} key={marker.id} onPress={this.openModal4} /> 
     ); 
     })} 
    </MapView> 
    <View style={{position: 'absolute', width: windowsWidth, height: windowsHeight - 100, alignItems: 'center', justifyContent: 'center'}}> 
     <Image 
     source={require('./assets/map-marker.png')} 
     /> 

    </View> 
    <Modal style={[styles.modal, styles.modal4]} position={"bottom"} ref={"modal4"}> 
    </Modal> 
    </View> 
) 
} 

kann mir jemand helfen? Danke im Voraus.

+0

könnten Sie den gesamten Code in der Datei anzeigen? – stereodenis

+0

können Sie jetzt @stetereoden – atif

+0

sehen, was Sie 'extend React.Component' oder' React.createClass' verwenden? – stereodenis

Antwort

0

Sie Änderungen vornehmen, sollte dies in Rückrufe binden diesen Artikel lesen Don't Use Bind When Passing Props

openModal4 = (id) => { 
    this.refs.modal4.open(); 
} 
+0

Ich kann immer noch nicht modal von unten kommen? – atif

+0

könnten Sie console.log (this.refs.modal4) in openModal4 aufrufen? – stereodenis

+0

ich kann nichts nach console.log sehen (this.refs.modal4) – atif

0

Männer Die Bindung war die Frage, die nach der Verwendung von Pfeilfunktion => hier gelöst wird ist der Code

openModal4(id){ 
    this.refs.modal4.open(); 
    } 

{this.state.markers.map((marker) => { 
      return(
       <MapView.Marker coordinate={marker.latlng} key={marker.id} onPress={this.openModal4} /> 
      ); 
      })} 

Und Sie müssen die Funktion im Konstruktor zu binden, wie es aus 'Dies'

besteht

hoffe mein Kampf würde anderen helfen

Verwandte Themen