06 2021 档案
摘要:我们经常会在代码中发现=>(箭头函数),那么什么是箭头函数呢? 其实箭头函数类似iOS的block(回调),安卓的回调,JS的匿名函数(简化了函数定义) 简介: ES6标准新增了一种新的函数:Arrow Function(箭头函数)。 所以你的浏览器首先要支持ES6的Arrow Function。
阅读全文
摘要:JavaScript有两个表示”无”的值:undefined和null。 undefined 表示”缺少值”,就是此处应该有一个值,但是还没有定义。例如,变量被声明了,但没有赋值,那么就是undefined。 转换为数值为:NaN null 表示一个值被定义了,但是它是空值。 转换为数值为:0 备注
阅读全文
摘要:在iOS的世界里,视图是有生命周期的,比如视图加载,视图将要出现,或者视图销毁等阶段, 同理在React Native的生命周期里也是有类似阶段的,网上有很多例子,过程叫法也不太一样, 个人感觉总体是三个阶段: 挂载阶段、运行阶段、卸载阶段 一、挂载阶段 视图从创建 >初始化 >加载完成阶段, 类似
阅读全文
摘要:项目中有时我们会遇到如下错误: Invariant Violation: Text strings must be rendered within a <Text> component. 解决办法: 仔细检查代码,一般该错误都是语法错误引起 示例: 查找许久,终于找到了原因: 原来是语法错误,多写了
阅读全文
摘要:针对justifyContent、alignItems、alignSelf、alignContent这几个属性, 我们经常使用的是justifyContent、alignItems,我们可以了解下alignSelf、alignContent flexDirection 谈到布局我们从原生讲起,在iO
阅读全文
摘要:项目中我们经常会遇到子组件和父组件垂直水平居中的问题,那么我们如何实现这个效果呢? 方法有很多种,下面以自定义按钮为例简述下实现方法, A:主要使用这个来实现(相当于水平垂直居中): justifyContent: 'center', alignItems:'center', 首先要理解justif
阅读全文
摘要:某些情况下组件内直接取实体属性会报如下错误 TypeError:undefined is not an object(evaluating 'this.props.userBaseVo.userName') 此时就需要用三目?: (this.props.userBaseVo ? this.props
阅读全文
摘要:项目中我们经常会遇到标签的样式,那么我们如何自定义呢? 起初想直接使用Text设置间距不就可以了, 然而实测发现Text组件设置borderRadius、borderTopRightRadius等圆角是不会生效的,圆角需要设置在View上 所以我们的方案就是View包裹Text。用View设置圆角,
阅读全文
摘要:项目中我们经常会遇到单选的功能,有很多第三方库也有类似功能,譬如Ant Design Mobile RN库中的Radio, 但是这些样式是固定的,当我们需要自定义单选图标,完全自定义时,就需要我们自己实现了。 下面简述下自定义单选的功能, 本质是为每条数据绑定一个选中标记sel,然后通过该标记来实现
阅读全文
摘要:项目中我们会经常使用到一些属性,下面简记下自己使用的 1、透明色 transparent 2、View默认的色值就是transparent 3、字体加粗 fontWeight(一般会根据设计统一调整) this.isAndroid()?'200':'bold'; 4、圆角 borderRadius
阅读全文
摘要:项目中我们经常会遇到展开收起的功能,今天讨论下展开收起的思路, 其实就是添加一个标记(openflag),然后我们需要展开收起的视图依赖于这个标记。 效果如图: 收起时显示展开 展开时显示收起 话不多说上代码 export default class Test extends React.Compo
阅读全文
摘要:项目中我们会经常使用到TouchableOpacity这个组件,下面简述下自己的见解: 1、相当于一个有点击功能的View 所以可以像View一样设置样式 2、被包含组件的margin会响应点击事件 所以我们要控制点击热区时,应当将margin考虑在内,这个比较好理解margin也是组件的一部分 3
阅读全文
摘要:项目中我们经常会遇到一种情况就是,我的核心内容展示很长(用ScrollView实现),但是按钮要定位在屏幕底部,那么此时我们如何实现呢? 其实很简单,只要除了按钮位置都留给ScrollView即可,用flex:1即可实现, 因为flex:1默认会优先展示兄弟组件,然后才会自己填充满父组件剩余部分。
阅读全文
摘要:项目中我们经常会遇到组件左右两端展示的需求,实现的方法有很多种, 今天简述下以下两种方法: A:子组件使用flex:1(自动填充) 优势: 设置flex:1的组件会优先展示兄弟组件,然后自己才会填充父组件剩余部分。 假如设置左端组件flex:1,那么会优先展示右端组件,然后左端组件才会填充父组件剩余
阅读全文