ReactNative0.63正式版发布:LogBox

Stella981
• 阅读 608

今天ReactNative官网发布了0.63版本,距离上一个版本0.62已经过了差不多将近4个月的时间了,我在上一篇文章中也提到了0.62的更新内容。

ReactNative0.62更新内容

此次0.63版本的更新主要是提供了一个LogBox(日志盒子),一个全新设计的日志系统,方便开发定位开发中遇到的问题,请大家通过本篇文章来了解一下吧。

LogBox

在ReactNative定位错误一直是一个比较困难的事情,所以ReactNative团队从新设计了针对错误,警告及日志的系统,全新的UI设计,称之为LogBox,样式如下:

ReactNative0.63正式版发布:LogBox

LogBox通过如下三点来完善处理开发过程中遇到的比如无法格式化,冗长的警告和错误信息等:

  • 简介:日志系统应该提供尽可能简单的信息来帮助开发定位问题

  • 格式化:将信息格式化,方便开发定位和查看

  • 可操作性:日志应该具有可操作性,可以帮助解决问题

为了达到以上目标,LogBox包含如下几个功能系统:

  • 日志通知:重新设计了警告通知并增加了错误支持,console.warn和console.log消息都都是为通知,而不是以往的会覆盖APP页面之上

  • 代码框架:错误及警告都有对应的代码框架可以在APP内显示对应的源码,方便快速定位信息

  • 组件堆栈:将堆栈信息单独从日志系统中剥离,是日志信息不会因堆栈信息而混乱

  • 折叠堆栈信息:将与应用程序无关的堆栈框架信息进行折叠,可以快速查看问题,而不用在ReactNative内部进行筛选

  • 语法错误格式:改进了语法错误的格式,并通过语法突出显示添加了代码帧,因此可以查看错误的根源,进行修复,并继续进行编码

经过全新设计的日志系统,可以让开发者通过上面令人赏心悦目的UI展示,更加方便的开发调试。

提供了新的LogBoxApi来替换原来YellowBox:

  • LogBox.ignoreLogs(): 用于替换原来YellowBox.ignoreLogs([])的功能

  • LogBox.ignoreAllLogs():用于替换console.disableYellowBox,关闭错误和警告通知。

新版本的LogBox内容就是以上的内容了,还有其他内容,一起来看一下吧。

Pressable

ReactNative中目前可点击的组件如下:Button, TouchableWithoutFeedback, TouchableHighlight, TouchableOpacity, TouchableNativeFeedback, and TouchableBounce.但是在不同平台上的点击表现是不一致,未来ReactNative将在很多平台上提供高质量的应用,目前在Web, Desktop, 和TV均有发展,已此需要在所有平台上提供高质量的交互体验。

为了解决这个问题,推出了一个核心交互API-Pressable,用于扩展其功能,以包括悬停,模糊,聚焦等。使用方式如下:

import { Pressable, Text } from 'react-native';

原生平台Color(PlatformColor, DynamicColorIOS)

每个原生平台都有系统定义的颜色的概念。React Native现在提供了一个开箱即用的解决方案来使用这些系统颜色。PlatformColor()是一个新的API,可以像React Native中的任何其他颜色一样使用。

对于IOS系统,提供了一个labelColor,使用方式如下

import { Text, PlatformColor } from 'react-native';

对于Android系统,提供了一个colorButtonNormal,使用方式如下

import { View, Text, PlatformColor } from 'react-native';

DynamicColorIOS是一个仅用于iOS的API,可让定义在浅色和深色模式下使用的颜色。与PlatformColor相似,它可以在任何可以使用颜色的地方使用。DynamicColorIOS在后台使用iOS的colorWithDynamicProvider。

import { Text, DynamicColorIOS } from 'react-native';

不再支持iOS9及Node.js 8

### 其他明显的改进

  •  支持在Text中渲染View

  •  将iOS LaunchScreen从xib更改为storyboard:从2020年4月30日开始,所有提交到App Store的应用必须使用Xcode storyboard来设置启动页,并适配所有iphone屏幕。

以上就是所有ReactNative0.63版本的主要更新内容。

ReactNative0.63正式版发布:LogBox

本文分享自微信公众号 - 君伟说(wayne90214)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
待兔 待兔
2个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
2年前
java中比较两个时间的差值
项目背景1.某篇文稿的发布时间是publishDate,例如:2020072118:00:41。2.现要求判断该篇文稿的发布时间是否在近30天之内。publicstaticlongdayDiff(DatecurrentDate,DatepublishDate){LongcurrentTimecurrentDat
Stella981 Stella981
2年前
ReactNative0.62更新内容
在今年的3月26日,FaceBook正式发布了ReactNative最新版本,版本号为0.62。作为一款优秀的开源跨平台开发框架,和对手Google开发的Flutter相比,近一年来的发展可谓进步缓慢,至今尚未发布1.0的正式版本。今天我们来聊一聊最新版本的更新内容。调试工具Flipper本次更新默认支持了Facebook自己研发的跨平台
Stella981 Stella981
2年前
ReactNative0.62更新内容抢先看
在今年的3月26日,FaceBook正式发布了ReactNative最新版本,版本号为0.62。作为一款优秀的开源跨平台开发框架,和对手Google开发的Flutter相比,近一年来的发展可谓进步缓慢,至今尚未发布1.0的正式版本。今天我们来聊一聊最新版本的更新内容。调试工具Flipper本次更新默认支持了Facebook自己研发的跨平台调
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
8个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这