native还是h5 react_react native h5 通信 - CSDN
  • react-nativeH5的通信

    2019-07-19 20:14:05
    1.react-nativeH5通信的情景 首先如果你的项目中需要接入一个H5写的项目,但是这个服务有必须用到react-native中的服务比如打开摄像头,获取地理位置等等。但是这些数据在H5中是获取不到的,那么就需要和react-...

    1.react-native 和 H5通信的情景

    首先如果你的项目中需要接入一个H5写的项目,但是这个服务有必须用到react-native中的服务比如打开摄像头,获取地理位置等等。但是这些数据在H5中是获取不到的,那么就需要和react-native通信,在react-native中获取到想要的数据,然后将数据返回给H5。

    2.实现方式

    (1).通过android原生和ios原生可以实现和H5的通信。
    (2).通过react-native中的webview来实现和H5通信。
    (3).通过第二种方式实现:
    在webview中onMessage是用来监听H5发送的消息的,我们可以在onMessage中接受到请求的数据。
    例如:

     <WebView   
     	onMessage={
     		(data)=>{console.log(data);}
     	} 
     />
    

    在 rn中通过webview的postMessage给H5返回结果。
    例如:

    <WebView   
         	ref={ (webview) => {this.web=webvew;} }
     />
         
    handleResponse=(response)=>{
    	this.web.postMessage(response);
    }
    

    H5中可以通过window.ReactNativeWebView.postMessage()向rn中发送消息。
    例如:

    function(request){
    	 window.ReactNativeWebView.postMessage(request);
    }
    
    展开全文
  • 摘要 2015年是React Native发展的一年,2016年必定是React Native蓬勃的一年!2016年React Native很可能成为最为成功的开源技术之一。为什么React Native这么火呢?...React Native React h5 《React Native

    @王利华,vczero

    “存在即合理”。凡是存在的,都是合乎规律的。任何新事物的产生总要的它的道理;任何新事物的发展总是有着取代旧事物的能力。React Native来的正是时候,一则是因为H5发展到一定程度的受限;二则是移动市场的迅速崛起强调团队快速响应和迭代;三则是用户的体验被放大,用户要求极致的快感,除非你牛x(例如:12306最近修改手机号需要用户自己发短信接收验证码)。
    以下简单的介绍下H5、React Native、Native的含义:

    最近三四年间,国内外的前端与全栈开发者社区都在坚持不懈地追寻使用JavaScript与HTML、CSS技术体系开发App内场景的核心工程技术。这种技术,在国内很多公司与团队中,被通称为H5。——童遥

    这段是取自童老师给小二我新书作的序,没有断章取义的意思。很清楚,H5并不是狭义的HTML5新标签和API,而是工程化的“In App” technology。

    iOS/Android ——原生应用(都懂得,不解释)。

    React Native —— React & Native ,应运而生!

    一、React Native的出现

    React Native的出现,似乎是扛起的反H5的旗子。就像当年Facebook放弃H5,全部转向Native一样。这一点,我们需要认同和保持高度的清醒。那么,React Native是否又是在吞食Native的领地呢?技术的发展,是用户风向标的导向起的作用。任何一门技术的出现,都是当时用户需求的体现。

    我们应该从以下几点看待React Native的出现。

    "鉴往知来"——从过去的教训中总结经验,从用户的角度开拓未来
    “HTML5差强人意,但是与原生应用相比还是有些差距”——为了更高的追求! 用户体验!
    “人才宝贵,快速迭代”——Web开发者相对较多,寻找平衡点
    “跨平台!跨平台!跨平台!”——单一技术栈
    “xx是世界上最好的语言” ——工程学的范畴,没有最好,只有最适合

    HTML5 vs React Native ? HTML5 : React Native
    结论(React Native):
    1、原生应用的用户体验
    2、跨平台特性
    3、开发人员单一技术栈
    4、上手快,入门容易
    5、社区繁荣

    二、3款应用效果

    注:以下所有对比均在iOS平台下



    上面3张图片,如果去掉第一张图的“HybirdApp”的字样,是否分得清哪个是React Native开发?哪个是Native应用。
    你的第一感觉是什么?

    三、工程方案

    为了评估3种方案的技术优势和弱势。我们需要开发功能大致相似的App。这里,我们使用了“豆瓣”的API来开发“豆搜”应用。该应用能够搜索“图书”、“音乐”、“电影”。想当年,豆瓣以“图书评论”走红,尤其是12年当红!豆瓣是一个清新文艺的社区,一个“慢公司”。最近有一则网传消息,注意是网传——“传京东投1.5亿美元控股豆瓣”。今天,不聊豆瓣,我们要聊一个工程化的问题。

    我们需要将3款App的功能做到一致,同时需要保持技术要点一致。比如React Native这里使用了TabBar,那么Native我们也必须使用TabBar。简单而言就是:功能一致,组件 & API一致。我们功能如下图所示:

    1、H5方案
    在H5/Hybird应用中,我们使用AngularJS开发单页webApp,然后将该WebApp内嵌入到iOS WebView中,在iOS代码中,我们使用Navigation稍微控制下跳转。
    WebApp地址:http://vczero.github.io/search/html/index.html
    WebApp项目地址:https://github.com/vczero/search (很简单的一个项目)
    H5/Hybird项目地址:https://github.com/vczero/search_Hybird

    2、React Native
    在React Native中,封装必要的功能组件。
    项目地址:https://github.com/vczero/React-Dou。
    项目结构如下图:

    3、Native(iOS)
    使用React Native大致相同的组件开发App,不使用任何第三方库,代码布局。
    项目地址:https://github.com/vczero/iOS-Dou

    四、对比分析

    很多时候,新技术的采用最希望看到的是数据,而不是简单说“用户体验棒,开发效率高,维护成本低”。不过,生活中也有这样的同学,知一二而能窥全貌。当然,本人生性胆小,也没有那么多的表哥和隔壁的老王,所以不敢早下定论,不敢太放肆。赵本山在《大笑江湖》中有句名言“May the force be with you”(别太放肆,没什么用)。因此,从以下几个方面做一个简单的对比。

    ----------提纲------------

    1、开发方式

    (1)代码结构
    (2)UI布局
    (3)UI截面图
    (4)路由/Navigation
    (5)第三方生态链

    2、性能 & 体验

    (1)内存
    (2)CPU
    (3)动画
    (4)安装包体积
    (5)Big ListView
    (6)真机体验

    3、更新 & 维护

    (1)更新能力
    (2)维护成本
    ----------提纲------------

    1、开发方式

    很多人说React Native的代码不好看,不好理解。那是因为前端工程师都熟悉了Web的开发方式。怎么解决这个问题呢,可以先看看iOS代码,断定不熟悉iOS的同学心里会默念“一万匹**马奔腾”。那时候,你再看React Native,你会觉得使用React Native开发App是件多么美好的事!OK,我们先来看下三者在开始“一款简单App”的代码结构。
    (1)代码结构
    H5/Hybird的开发模式,我们需要维护3套代码,两套是Native(iOS/Android)代码,一套是WebApp版本。这里,我们使用AngularJS作为WebApp单页开发框架。如下图所示。

    在React Native中,同样需要关注部分的Native代码,但是大部分还是前端熟悉的JavaScript。在“豆搜”应用中,代码结构如下:

    在Native开发中,更加强调Native开发者的能力。平台是:iOS/Android。

    结论:从前端角度而言,React Native跨平台特性,不要开发者深入的了解各平台就能开发一款高效App。同时,语言层面而言,JavaScript运用很广泛,入门门槛相对较低。React Native虽然抛弃了MVC分离实践,但是从业务角度而言,更为合理。一切而言:对前端,对移动领域是利好的消息。

    (2)UI布局
    “面容姣好”,合理的UI却总是跟着时间在变。那么UI布局就不是小事。
    Web开发布局目前大多是 DIV + CSS。
    React Native的布局方式是Flexbox。

       //JSX
      <ScrollView style={styles.flex_1}>
        <View style={[styles.search, styles.row]}>
          <View style={styles.flex_1}>
            <Search placeholder="请输入图书的名称" onChangeText={this._changeText}/>
          </View>
          <TouchableOpacity style={styles.btn} onPress={this._search}>
            <Text style={styles.fontFFF}>搜索</Text>
          </TouchableOpacity>
        </View>
        {
          this.state.show ?
          <ListView
            dataSource={this.state.dataSource}
            renderRow={this._renderRow}
            />
          : Util.loading
        }
      </ScrollView>
      //样式
      var styles = StyleSheet.create({
          flex_1:{
            flex:1,
            marginTop:5
          },
          search:{
            paddingLeft:5,
            paddingRight:5,
            height:45
          },
          btn:{
            width:50,
            backgroundColor:'#0091FF',
            justifyContent:'center',
            alignItems:'center'
          },
          fontFFF:{
            color:'#fff'
          },
          row:{
            flexDirection:'row'
          }
        });        

    而Native布局就有种让你想吐的感觉,尤其是iOS的布局。这里不是指采用xib或者Storyboard,而是单纯的代码,例如添加一个文本:

    UILabel *publisher = [[UILabel alloc]init];
    publisher.frame = CGRectMake(bookImgWidth + 10, 50, 200, 30);
    publisher.textColor = [UIColor colorWithRed:0.400 green:0.400 blue:0.435 alpha:1];
    publisher.font = [UIFont fontWithName:@"Heiti TC" size:13];
    publisher.text = obj[@"publisher"];
    [item addSubview:publisher];           

    总结:React Native既综合了Web布局的优势,采用了FlexBox和JSX,又使用了Native原生组件。比如我们使用一个文本组件。
    <Text style={{width:100;height:30;backgroundColor:'red'}}>测试</Text>

    (3)UI截面图
    Hybrid方式截面图

    可以看到第一层列表页是完整的布局,实际上这就是Web页面;而第二层灰色的是Native的WebView组件。
    iOS UI截面图


    可以看到Native页面的组件特别多,即使是列表页,其中某一项都是一个组件(控件)。

    当然,我们就会想,能够完全调用原生组件呢?那样性能是否更好?
    React Native UI截面图


    可以清楚的看到React Native调用的全部是Native组件。并且层次更深,因为React Native做了组件的封装。如上图,蓝色边框的就是RCTScrollView组件。

    (4)路由/Navigation
    在Web单页面应用中,路由由History API实现。
    而React Native采用的路由是原生的UINavigationController导航控制器实现。
    React Native NavigatorIOS组件封装程度高;Navigator可定制化程度高。
    Navigator方法如下:

    getCurrentRoutes() - returns the current list of routes
    jumpBack() - Jump backward without unmounting the current scene
    jumpForward() - Jump forward to the next scene in the route stack
    jumpTo(route) - Transition to an existing scene without unmounting
    push(route) - Navigate forward to a new scene, squashing any scenes that you could jumpForward to
    pop() - Transition back and unmount the current scene
    replace(route) - Replace the current scene with a new route
    replaceAtIndex(route, index) - Replace a scene as specified by an index
    replacePrevious(route) - Replace the previous scene
    immediatelyResetRouteStack(routeStack) - Reset every scene with an array of routes
    popToRoute(route) - Pop to a particular scene, as specified by its route. All scenes after it will be unmounted
    popToTop() - Pop to the first scene in the stack, unmounting every other scene         

    相对Native而言,这些接口更Native还是很相似的。

    //iOS UINavigationController  
    //相对Web而言,不用自己去实现路由,并且路由更加清晰         
    [self.navigationController pushViewController:detail animated:YES];

    "豆搜" WebApp路由(基于AngularJS)如下:

    "豆搜" React Native版本导航如下:

    "豆搜" iOS版本导航代码如下:

    总结:React Native封装的导航控制更容易理解。

    (5)第三方生态链
    “我的是我的,你的也是我的。 ”——我不是“疯狂女友”,我是React Native!
    我们缺少“城市列表”组件,OK,使用JSX封装一个;觉得性能太低,OK,基于React Native方案封装一个原生组件。
    这个iOS图表库不错,拿来用呗! => 完美!
    这一切都是基于React Native提供的模块扩展方案。
    所以说:iOS第三方库 + 部分JavaScript库 = React Native 生态库

    2、性能 & 体验

    我们都很关注一款App性能。因此测试和体验App的性能很重要。以下测试,都是基于相同的case。
    测试平台:模拟器,iphone6,iOS8.4
    (1)内存
    首先,我们来看下Native应用占用的内存情况。一开始,原生应用启动后,占用内存是20~25M;针对相同的case,跑了2min,结果如下图:

    可以看出,峰值是87.9M,均值是72M;内存释放比较及时。

    我们再来看下Hybird App的情况。App已启动,占用内存35~55M;同样,跑了2min以上,结果如下图:

    可以看出,峰值在137.9M,因为整个应用在WebView中,内存释放不明显,存在缓存。

    最后,看下React Native的情况。App启动占用内存35~60M,同样跑2min以上,结果如下图:

    可以看出,峰值在142M,内存相对释放明显。

    总结:React Native和Web View在简单App上相差不大。二者主要:内存消耗主要是在网页数据上。

    (2)CPU
    我们可以看一下Native应用程序CPU的情况,最高值在41%。

    Hybird App的最高值在30%。

    React Native的最高值在34%。

    总结:CPU使用率大体相近,React Native的占用率低于Native。

    (3)动画
    React Native提供了Animated API实现动画。简单效果,基本OK。个人觉得React Native不适合做游戏,尤其布局能力。
    Native Animation提供UIView动画
    H5/Hybird:采用js动画能力
    总结:React Native Animated API / 封装Native动画库 可以满足基本需求

    (4)安装包体积
    Hybird App:
    34(App壳) + 5(HTML) + 125(Angular) + 29(An-route) + 6(min.js) + 4(min.css) = 203 KB。

    React Native:
    不含bundle: 843KB
    含bundle: 995KB

    Native
    83KB

    React Native框架包大小
    843(不含bundle) – 32(Hybird_app空壳,初识项目) = 811KB

    相比快速迭代和热更新,比Native多了811KB一点都不重要,我们将图片素材、静态资源线上更新缓存起来即可减少很多体积。
    总结:牺牲一点体积,换更大的灵活性!(世界上哪有那么美的事,除非丑,就会想得美,:) )。

    (5)Big ListView & Scroll 性能
    循环列表项500次: H5页面惨不忍睹
    React Native还可以接受
    Native 采用UITabView更高效,因为不渲染视图外部分。

    (6)真机体验
    机型:iphone4s,iOS7
    Native > React Native > Hybird
    如果非要给个数字的话,那我个人主观感受是:
    Native: 95%+ 流畅度
    React Native: 85~90% 流畅度
    H5/Hybird: 70% 流畅度

    总结:Native/React Native的体验相对而言更流畅。

    3、更新 & 维护

    (1)更新能力
    H5/Hybird: 随时更新,适合做营销页面,目前携程一些BU全部都是H5页面;但是重要的部分还是Native。
    React Native:React Native部分可以热更新,bug及时修复。
    Native:随版本更新,尤其iOS审核严格,需要测试过关,否则影响用户。

    (2)维护成本
    H5/Hybird: Web代码 + iOS/Android平台支持
    React Native:可以一个开发团队 + iOS/Android工程师;业务组件颗粒度小,不用把握全局即可修改业务代码。
    Native:iOS/Android开发周期长,两个开发团队。

    总结:React Native 统一了开发人员技术栈,代码维护相对容易。

    五、综合

    1、开发方式

    (1)代码结构: React Native更为合理,组件化程度高
    (2)UI布局:Web布局灵活度 > React Native > Native
    (3)UI截面图:React Native使用的是原生组件,
    (4)路由/Navigation:React Native & Native更胜一筹
    (5)第三方生态链:Native modules + js modules = React Native modules

    2、性能 & 体验

    (1)内存:Native最少;因为React Native含有框架,所以相对较高,但是后期平稳后会优于Native。
    (2)CPU:React Native居中。
    (3)动画:React Native动画需求基本满足。
    (4)安装包体积:React Native框架打包后,811KB。相比热更新,可以忽略和考虑资源规划。
    (5)Big ListView
    (6)真机体验:Native >= React Native > H5/Hybrid

    3、更新 & 维护

    (1)更新能力: H5/Hybird > React Native > Native
    (2)维护成本: H5/Hybird <= React Native < Native

    React Native定制难度相比Native有些大;但是具备跨平台能力和热更新能力。
    最后硬广一下我的书:


    展开全文
  • 前言:这边主要是记录下,在react native中如何使用h5页面,以及h5页面发生点击,或者跳转到react native时,如何与react native进行通信。一、react native中的webview组件1、为什么要用webview页面。 我这边用...
    前言:这边主要是记录下,在react native中如何使用h5页面,以及h5页面发生点击,或者跳转到react native时,如何与react native进行通信。

    一、react native中的webview组件

    1、为什么要用webview页面。

          我这边用webview是因为用rn来写页面,速度实在是感人。而且RN里面的样式没有css那么全面。如果要做弹出层等,还需要使用rn的组件。实在是麻烦。所以就选择用webview做h5页面。

    2、关于webview的详细介绍:

    参考博客:https://www.jianshu.com/p/9e6f1569227f

    二、webview在rn中的使用

    1、在页面顶部引入webview组件

    import{
      View,
      ScrollView,
      Image,
      Text,
      WebView,
    } from 'react-native';

    2、引入组件之后,在页面中使用webview引入h5的页面

     __detail_webview(){
        /*
        * scrollEnabled:是否允许滚动
        * javaScriptEnabled 是否允许插入JS代码到webview里面
        * injectedJavaScript  插入到webview的<head></head>标签中的JS代码
        * onMessage:获取webview传过来的数据
        * source:这个部分可以是webview页面的url,也可以是直接的html代码
        * */
        let it = this;
        let {params} = it.props.navigation.state;
        let webView_style = {height: it.state.webview_h,width: gScreen.width};
        return (
          <WebView
            style={webView_style}
            scrollEnabled={false} 
            javaScriptEnabled={true}  
            injectedJavaScript={'插入到h5页面中的js代码'}
            onMessage={event => {'接收h5页面传过来的消息'}}
            source={{uri: '你的可访问的h5链接'}}
          ></WebView>
        );
      }

          这部分使用的是部分webview的属性。具体的请看注释,都大致解释了一下是干嘛的。在source部分引入可访问的h5页面的链接之后,我们需要渲染视图。

    3、渲染视图

    //在页面中调用__detail_webview方法,渲染页面
      __render() {
        return this.__detail_webview();
      }
    

    4、显示h5页面

    这里写图片描述

          到这里,我们写好的h5页面就已经在rn中显示出来了。主要还是引链接的问题。如果需要往这个页面传参数,我们直接在webview的source中传递参数即可。

    三、webview与react native的通信

    1、实现react native和webview的通信,我们需要先了解h5解决跨域的全局函数。

    postMessage()方法
    onMessage()方法

    建议大家去百度查一下,先做个了解。这样就知道我们是要通过什么实现通信了。
    参考链接:https://www.cnblogs.com/dolphinX/p/3464056.html

    2、比如我们在webview页面中,也就是新增地址这里,我们加一个点击事件,然后需要返回给react native一个路由字符串,供我们跳转。

    这里写图片描述

    3、webview中的点击事件代码:

    <script type="text/javascript">
          function add_address() {
            var route = 'Smart';
            var type = 'set_route';
              var obj = {
                "type": type,
                "route": route,
              };
              console.log("obj");
              console.log(obj);
              window.postMessage(
                JSON.stringify(obj)
              );
          }
        </script>

          这里是点击之后,我们通过postMessage()方法,传递两个参数。一个是type值,是我们做判断时候用的。判断是哪种类型的消息。另一个是我们想传递的其他参数。这里记得参数传递前做一次:JSON.stringfy()方法,解析json字符串。

    4、react native中获取postMessage()传过来的数据

    //这个方法就是我们在最上面,给webview加的onMessage属性调用的方法
     msg_from_webview_h(event) {
        let it = this.p; // 视图指针
        //使用JSON.parse()获取传过来的数据
        let get_data = JSON.parse(event.nativeEvent.data);
       console.log('get_data:');
       console.log(get_data);
       //判断type值是不是我们想要的type值
        if(get_data.type === 'set_route'){
          let str ="获取到的route信息:"+  JSON.stringify(get_data);
          //这里是一个小弹窗组件,弹出我们postMessage()方法传过来的数据,看看是不是我们想要的数据。
          toastModule.run(str, 0);
          return false;
        }
      

    5、点击“添加地址”,看看react native有没有和webview通信成功

    这里写图片描述

          如图所示,点击之后,我们弹出了我们想要的消息。接下来就是根据自己的业务逻辑来处理弹出来的数据了。通信成功。

    展开全文
  • 2019独角兽企业重金招聘Python工程师标准>>> ...

        一直以为混合编程就是HTML+原生来写前台页面用html,功能用原生,结果做出来的项目一直不满意,主要android太坑了。。内部的webkit只要图片一多,做个轮播效果,我只想说抱歉,卡爆了,特别华为手机上更是不得了,都android 6.0了为啥也这么卡爆,没有更新chrome内核么?还是最原始版本的chrome内核都不升级了,然后看其他app淘宝,微信,为啥就能这么快运行,轮播也不会卡顿,后面才发现他们用的是react native。我一直纠结mui,mui这玩意是好是快速,但是呢对于android呢,各种神级坑,不同厂家手机差异性要不要这么大。算了。。研究react native去了。。后续项目会不断更新

    转载于:https://my.oschina.net/u/163029/blog/747187

    展开全文
  • React源码 React16源码之React Fiber架构 从源码看React异常处理 从源码看React.PureComponent ...web移动端布局的那些...React Native转web方案:react-native-web React Native Icon方案:react-native-svg ...
  • 前言:这边主要是记录下,在react native中如何使用h5页面,以及h5页面发生点击,或者跳转到react native时,如何与react native进行通信。一、react native中的webview组件1、为什么要用webview页面。 我这边用...
  •  由于工作原因,由Android原生开发转向React Native开发,ReactNative是从去年5月份开始至今,最近公司想要使用Android+H5开发,在这里,找了一篇文章,说一下Android 原生开发、H5React-Native开发特点。...
  • react-native可以使用Webview组件来内嵌H5页面,在开发过程中,H5页面常常要和APP端进行数据交互。 那么这个交互机制是怎么样的呢?原理如下: - APP端注入JS脚本到H5端,供H5页面调用。 - H5页面调用APP注入的...
  • 1、需求 工作可能有这样的需求,就是手机浏览器中加载一个h5页面,点击可以打开某一个APP,比如微信等。这时候通常都是采用URL Scheme的方式进行配置跳转。 那么什么是URL Scheme呢? 简单说:它是一个页面跳转协议...
  • 导语:近年来,随着移动端...这其中有对载入H5做通信和性能优化的框架,如Phonegap等,也有使用JS脚本生成本地代码的框架,如Facdbook推出的react native这一类的框架。React Native正如项目的名称表露的那样,Reac...
  • 使用ReactNative开发时,项目中有时候还需要使用h5,那么本文要解决的问题是h5ReactNativ的互动。在h5中单击某个按钮,可以触发ReactNative的动作执行。我们通过react-native-webview-bridge来实现 2、 实现流程 ...
  • 最近工作中接触到React-Native框架,对其进行一些技术分析,结合之前了解的H5的一部分,加上自己做了很久的原生开发(十几个android app、sdk,包括2个ios), 总结下目前了解到的这三种移动端应用开发方式的特点和...
  • 最近的奇葩需求~RN里接入微信的H5支付,iOS用RN的webview就可以做到,安卓死活不行....但是用安卓原生应用却可以! 于是想到用安卓原生WebView: 新建JAVA文件继承--注意:不是继承至xxxModule ReactWebViewManager....
  • 最近在开发APP功能的时候遇到一个问题,之前也没有遇到这样的需求所以也没有研究过。 功能是这样的:项目中有个webview 加载h5页面,h5页面中...最后还是reactnative中文网重新仔细的查看了关于Webview的API,才找...
  • 原生开发是系统自带的app开发方式,也是大部分人最熟悉app开发的技术,如android、ios、wp。...react-native是用react 进行原生app开发的框架,让广大开发者使用js和react开发应用,提倡组件化开发
  • React简介 Rn是基于React的设计,了解 React有助于我们开发RN应用,React希望将功能分解华,让开发变得像搭积木一样,快速而且具有可维护性。 React主要有如下的3个特点: * 作为UI(just the UI) * 虚拟DOM...
  • 一、前言最近开新项目,准备尝试一下 ReactNative,所以前期做了一些调研工作,ReactNative 的优点非常的明显,可以做到跨平台,除了少部分 UI 效果可能需要对不同的平台进行单独适配,其中的核心逻辑代码,都是可以...
  • Facebook 于2015年9月15日推出react native for Android 版本, 加上2014年底已经开源的IOS版本,至此RN (react-native)真正成为跨平台的客户端框架。本篇主要是从分析代码入手,探讨一下RN在安卓平台上是如何构建...
  • 一、安装 ...react-native link react-native-camera 二、配置(IOS) 三、使用 只需import { RNCamera } from react-native-camera 模块中 取出标签。 引用标签: <RNCamera ref={ref => { ...
1 2 3 4 5 ... 20
收藏数 6,380
精华内容 2,552
关键字:

native还是h5 react