React Native 学习纪要

由于公司业务需要,最近开始学习React Native相关知识,RN总体来说对于零基础的人还是不太友好,初期总能碰到一堆配置问题,让人摸不着头脑,因此本文将总结一下我在最近学习中所碰到的坑。

新建工程中遇到的坑

  • JDK版本
    react native目前需要的版本必须小于1.9,之前mac上安卓的是jdk 10,然后运行demo工程一直报连不上设备,查了半天不知道什么原因……
    错误:Could not initialize class com.android.sdklib.repository.AndroidSdkHandler
  • Gradle版本
    新建工程的gradle版本可能不是你目前已经安装过的版本,因此需要手动在android文件夹下的build.gradle中修改gradle版本
  • 真机调试端口设置
    连真机调试,首先确保你的电脑和手机设备在同一个Wi-Fi环境下,然后需要配置一下端口
    cmd: adb reverse tcp:8081 tcp:8081
    参考文章:https://blog.csdn.net/xsl_bj/article/details/50417735

开发过程中遇到的坑

  • 常见问题
    新版RN没有index.android.js和index.ios.js 而是index.js
    错误:unable to load script from assets ‘index.android bundle’ ,make sure your bundle is packaged correctly or youu’re runing a packager server
    每次修改代码需要重新打包,这个比较麻烦
    cmd:react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
  • react-navigation
    RN跳转需要使用该组件
    官网链接:https://reactnavigation.org/docs/en/custom-navigator-overview.html
    示例代码:
//配置Navigator
const Main = StackNavigator({
    GoodsScene: {screen: App}, 
    StoreListScene: {
        screen: StoreList,
        navigationOptions: ({navigation}) => ({
            header: null
        })
    }
},
{
    initialRouteName: 'StoreListScene',
    headerMode: 'screen'
});

export default Main;


//跳转调用
this.props.navigation.navigate('GoodsScene')
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容