React Native 如何区分系统平台,动态加载组件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013718120/article/details/78291945


刚创建的React Native 微信公众号,欢迎微信扫描关注订阅号,每天定期会分享react native 技术文章,移动技术干货,精彩文章技术推送。同时可以扫描我的微信加入react-native技术交流微信群。欢迎各位大牛,React Native技术爱好者加入交流!



Android 平台下, React Native WebView 的官方组件,无法上传文件,<input type = "file"> 不能打开文件对话框,需要自己监听事件去扩展。

幸好这里有一个封装好的库,可以直接使用:
https://github.com/lucasferreira/react-native-webview-android

那么问题来了,这个库只有android版本,所以ios下,仍然采用 RN 自带的 WebView 组件。这就需要判断系统类型,实现组件的动态加载,参考代码如下:

/**
 * 加载主界面
 */
render() { 
    const WebViewEx = Platform.select({
        ios: () => require('react-native').WebView,
        android: () => require('react-native-webview-android'),
      })();

    return <WebViewEx
        ref='webView'
        source={
            // 省略代码
        }

猜你喜欢

转载自blog.csdn.net/u013718120/article/details/78291945