Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React native和mobx:[getFunction]不是函数_Javascript_React Native_Android Mapview_React Native Android_Mobx - Fatal编程技术网

Javascript React native和mobx:[getFunction]不是函数

Javascript React native和mobx:[getFunction]不是函数,javascript,react-native,android-mapview,react-native-android,mobx,Javascript,React Native,Android Mapview,React Native Android,Mobx,我目前正在尝试实现一个MobX函数,该函数从firebase数据库导入标记,如下所示: fbMarkers.getMarkers().forEach( (marker, index) => { console.log("Adding marker to map.."); console.log(JSON.stringify(marker)); ... 但是,我得到的错误是MarkersStore.fbmarks.getMarkers不是一个函数。 函数如下所示: @compute

我目前正在尝试实现一个MobX函数,该函数从firebase数据库导入标记,如下所示:

fbMarkers.getMarkers().forEach( (marker, index) => {
  console.log("Adding marker to map..");
  console.log(JSON.stringify(marker));
...
但是,我得到的错误是MarkersStore.fbmarks.getMarkers不是一个函数。 函数如下所示:

@computed get getMarkers() {
    console.log("Getting markers.. which are:");
    console.log(JSON.stringify(this.markers));
    return this.markers;
  }
每当我从签名中删除
@computed get
部分时(签名为
getMarkers(){…}
),我都可以成功调用该函数,但我的标记不会显示(我使用的是Airbnb mapView)

我的渲染方法如下所示:

render() {
    var renderingMarkers = fbMarkers.markers.slice() || [];
    return (<View>
      {renderingMarkers.forEach( (marker, index) => {
      return (
      <MapView.Marker
      navigator={this.props.navigator}
      key={index}
      coordinate={{latitude: marker.coordinate.latitude, longitude: marker.coordinate.longitude}}
      title={marker.title}
      description={marker.description}
      onPress={(coord, pos) => this.navigateToBookBike(marker.title)}
      ><View style={styles.bikeRadius}><View style={styles.bikeMarker}>
      <Text>Heyy</Text>
      </View></View>
      </MapView.Marker>
);
      })}
      </View>)
  }
render(){
var renderingMarkers=fbMarkers.markers.slice()| |[];
返回(
{renderingMarkers.forEach((标记,索引)=>{
返回(
this.navigateBookBike(marker.title)}
>
嘿
);
})}
)
}
我是否犯了任何明显的错误,或者有什么我必须重视的吗?欢迎提供任何帮助和想法!:)


完整的代码是,如果这对您使用JavaScript有帮助的话,这意味着您不应该像函数调用那样取消对值的引用。改为这样做:

fbMarkers.getMarkers.forEach((marker, index) => {
  console.log("Adding marker to map..");
  console.log(JSON.stringify(marker));
});

谢谢你!我想这不起作用的原因(它给了我一个空对象异常)是数据没有下载。你也可以看看这个吗?