React-native使用过程中踩的坑

因为之前没有js的经验,所以踩坑较多,在此做个记录。
环境:
Visual stadio code(1.28.2) + Mac + React Native + 安卓模拟器


Q:VS Code在格式化代码的时候表现很怪异。
A:因为vs默认按照js进行格式化,所以我们需要将js设置为Javascreat React.
在这里插入图片描述


Q: 我明明导入了模块,但是运行时候提示我没有导入模块。

Invariant Violation: 
Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.
You likely forgot to export your component from the file it's defined in, 
or you might have mixed up default and named imports.

A: 仔细对比之后,发现import的写法错误。

// 错误写法 
import {NavigatorBar} from '../common/navigator'
------
//正确写法
import NavigatorBar from '../common/navigator'

see:https://blog.csdn.net/junhuahouse/article/details/80558233


Q:模拟器和真机上如何reload
A:模拟器上直接双击R即可,真机的话,左右摇动即可弹出reload选项。


Q:使用fetch发送网络请求,修改了header部分,然后一直报错。。
在这里插入图片描述

Error calling RCTDeviceEventEmitter.emit

Failed to create Value from JSON: 
run
    NativeRunnable.java
handleCallback
    Handler.java:751
dispatchMessage
    Handler.java:95
dispatchMessage
    MessageQueueThreadHandler.java:29
loop
    Looper.java:154
run
    MessageQueueThreadImpl.java:192
run
    Thread.java:761

A:最后重新运行一遍解决(杀死app重新进入也可)。根据提示猜测可能是因为某个异常导致native于rn之间的线程死掉了,从而导致他们之间的链接断开。所以重启能够解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值