react Native 踩坑记录
应用
1 安卓打包
2 调试
3 微信分享和登录
使用 react-native-wechat 地址
设计图来自蓝狐,可以根据里面的尺寸来进行开发,但是左右的间隔需要通过获取设备宽度减两边来得出,
苹果手机用 爱疯6, 安卓需用自定义尺寸。
在苹果上,默认高度是整个手机的高度;然而安卓默认是除了状态栏以下的高度,我们通过Dimensions获取的高度也是不一样的,也就是说,在安卓手机上获取得到的高度也是除了状态栏以下的高度;官方提供一个常量,可以获取安卓手机上状态栏的高,在苹果手机上使用此方法获取得到的是undefined:
currentHeight(仅限Android)状态栏的当前高度StatusBar.currentHeight
弹性布局中,给子text设置 width 不靠谱,在ios正常,在安卓不生效,但是给text套一个View 在view上设置宽度就可以定宽了
rightStyle: {
flex: 1,
flexDirection: 'row',
justifyContent: 'flex-end',
alignItems: 'center',
},
<View style={styles.rightStyle}>
<View style={{ width: 200 }}>
<Text style={styles.rightText}>{extra || rightText}</Text>
</View>
{arrow && <Image style={{ marginLeft: 8 }} source={rightPng} />}
</View>
TextInput 中的value 必须要为 string 不然回填不上, number 都填不上
<TextInput
value={String(inputValue || '')}
// style={{ textAlign: 'right', width: 200 }}
onChangeText={inputChange}
keyboardType={keyboardType}
placeholder={inputPlaceholder}
/>
以为text的换行省略号不行,原来是自己把text封装了一下,忘记把props传进去了,。。。自己坑自己
键盘遮挡问题的解决 断网后的页面刷新保存问题 右上角 弹框实现和封装
常见错误
1打包时报错
Could not list contents of '/Development/personalProject/RNCommunity/node_modules/node-pre-gyp/node_modules/.bin/needle'. Couldn't follow symbolic link.
2. 书写时
Error while updating property 'padding' in shadow node of type: RCTView
null
For input string: "4% 1% 2"
键盘遮挡
选择日期控件更换,点击选择默认为当前日期
上传文件,照片墙
图表展示
联网方式不对,app闪退
web富文本编辑,在app端展示
长按 tooltip 的实现 复制和删除
分页和刷新组件的封装
上部分内容,下部分列表的实现:上部分内容放在 flatlist 的header里面, 这样就可以用封装的通用list组件了
echart图表在rn中的展示
基础工具util的封装
日期格式转换
request请求封装 + 错误提示的统一封装
遇到的坑
也有一次一块传多个大文件时,经过多人排查,才发现,原来是 nginx限制了请求体的大小
react Native 踩坑记录的更多相关文章
- react native踩坑记录
一 .安装 1.Python2 和Java SE Development Kit (JDK)可以直接通过腾讯电脑关键安装, Android SDK安装的时候路径里不能有中文和空格 2.配置java环境 ...
- React Native踩坑Tip
最近在使用React Native(以下简称RN)中踩了个坑,RN只能异步调用原生方法,所以在原生方法直接调用UI刷新操作需要将任务递交到主线程才可以. RCT_EXPORT_METHOD(finis ...
- React Native踩坑日记 —— tailwind-rn
项目背景 在项目的初始阶段,我们需要建立自己的design system,我们spike了一些方案,tailwind-rn就是其中一种,如果有用到或者即将用到tailwind-rn的,可以进来看一看, ...
- React Native踩坑之旅
原文连接:http://www.studyshare.cn/blog-front/blog/details/1137 最近做一个app,使用React Native实现,如果严格按照RN官方文档去配置 ...
- React Native入坑记录
1.render中如果使用props,直接用this.props.xxx,如果是在JSX中,用{this.props.xxx} 2.警告each child in an array or iterat ...
- React Native踩坑之FlatList组件中的onEndReached
最近在做一个RN项目,有使用到FlatList这样一个RN封装的组件去做上拉加载更多功能,在iOS和Android平台上,总结了以下几个遇到的问题及解决方案 1. 进入页面onReached开始就被触 ...
- React Native踩坑之The SDK directory 'xxxxx' does not exist
相信和我一样,自己摸索配置环境的过程中,第一次配,很可能就遇到了这个比较简单地错误,没有配置sdk环境 解决办法 在电脑,系统环境变量中,添加一个sdk的环境变量 uploading-image-95 ...
- React Native踩坑之无法启动Debug
问题 在chrome启动debug模式,连接不到地址 解决办法 在模拟器中,ctrl+m调出command,选择dev setting,然后设置debug地址为localhost:8081
- React Native踩坑之启动android模拟器失败
报错 Could not install the app on the device, read the error above for details.Make sure you have an A ...
随机推荐
- 接口自动化测试框架--http请求的get、post方法的实现
已知两种方法.一种是通过httpclient实现(貌似很简单,以后看一下),一种是以下方法: Client实现: package common; import com.alibaba.fastjson ...
- Infinite monkey theorem(hdu 3689)
题意:问随机生成一个长度为m(m<=1000)长度的字符串,出现某个子串s的概率是多少. /* KMP+DP 设f[i][j]表示A生成到第i位,此时B串匹配到第j位的概率. 转移方程为f[i+ ...
- Yii 之控制器创建使用
在根目录下的controllers目录下创建控制器HelloController.php: <?php namespace app\controllers; use yii\web\Contro ...
- SGU112
题意:求a^b-b^a次,100以内.大数的-和*的模拟,用的模板,注意该模板中间和结果都不能出现负数. #include<iostream> #include<string> ...
- CCPC-Wannafly Winter Camp Day1 (Div2, online mirror) A,B,C,E,F,I,J
https://www.zhixincode.com/contest/7/problems A题 分类讨论 当B有点需要经过时 穿梭的花费肯定为2*k,也可以发现,我们要找到包含所有需要经过的点(不含 ...
- eopkg命令
#命令: add-repo (ar) ---添加存储库 blame (bl) ---包所有者和发布信息 build (bi) ---建立eopkg包 check ---验证安装 clean ...
- android CheckBox使用和状态获得
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...
- 【mac】显示隐藏文件夹
进入访达 快捷键:command+shift+.
- linux 文件属性、权限、所有人、所属组
Linux命令行模式下,文件还是需要通过ls -l来查看 可以通过ll查看长文件,会有如下类型显示drwxr-xr-x 2 root root 4096 Nov 10 2010 conf 总共有7 ...
- jmeter.properties控制聚合报告的用户响应时间设置和smmary results
jmeter.properties的配置Summariser控制输出Summary Results,可以显式rt和tps等信息 Aggregate Report配置可以控制聚合报告的内容,控制90%用 ...