我想创建一个通用元素,该元素在网络中返回div
,在React-Native中返回View
。
当前,它看起来像这样:
export const Element = ({children, ...rest}) => {
if (typeof document != 'undefined') {
return <div {...rest}>{children}</div>
}
try {
const View = require('react-native').View;
return <View {...rest}>{children}</View>
} catch (e) {
return {};
}
};
我使用try-catch,因为出现此错误:
未找到模块:错误:无法解析“ react-native”
我如何有条件地需要React-Native而不需要try-catch?
答案 0 :(得分:0)
您可以尝试导入类似react-native的外部函数
import { View } from 'react-native'
export const Element = ({children, ...rest}) => {
if (typeof document != 'undefined') {
return <div {...rest}>{children}</div>
}
return <View {...rest}>{children}</View>
};
可能会帮助您。