Typescript 如何根据平台导入模块

Typescript 如何根据平台导入模块,typescript,react-native,Typescript,React Native,我想根据平台导入一个模块 例如: import MapViewIOS from 'react-native-map-clustering' import MapViewAndroid from 'react-native-maps' const MapView = Platform.select({ ios: MapViewIOS, android: MapViewAndroid, }) 错误: JSX元素类型“MapView”没有任何构造或调用 签名:ts(2604) 这个看起来不

我想根据平台导入一个模块

例如:

import MapViewIOS from 'react-native-map-clustering'
import MapViewAndroid from 'react-native-maps'

const MapView = Platform.select({
  ios: MapViewIOS,
  android: MapViewAndroid,
})
错误:

JSX元素类型“MapView”没有任何构造或调用 签名:ts(2604)

这个看起来不错

以下是您在工作中试图做的事情的示例


这表明您使用的MapView不正确,或者您使用的MapView版本已损坏。

在react native中,您应该按平台分隔文件。例如,使用
MapView.ios.js
MapView.android.js
名称创建两个文件,以便为平台导出特定组件,并在需要使用MapView的任何位置像这样导入它们。
import MapView from.“/MapView”

在JSX中尝试为platform.os===“ios”: