找不到变量 atob
2020-02-23
20240
Screen1.js
import React,{useEffect} from 'react'
import {View,Text} from 'react-native'
import * as firebase from 'firebase/app';
import '@firebase/firestore';
const Screen1 = props =>{
useEffect(() =>
{
var dbh = firebase.firestore().collection("Jots").doc("note");
dbh.set({name:"pradeep"}) //The yellow warning is popped up in this line.
});
return(
<View>
<Text>Title</Text>
</View>
)
}
console
[Unhandled promise rejection: ReferenceError: Can't find variable: atob]
Stack trace:
node_modules\@firebase\firestore\dist\index.cjs.js:23101:0 in <global>
http://192.168.0.108:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:131203:60 in fromBase64String
我只是按照 expo 文档中的指南操作,但仍然不知道为什么会出现此问题。需要对此进行清晰的解释。还有,atob 变量是什么?
3个回答
我尝试过降级,但对我来说这并没有解决任何问题。我不知道为什么。
在 app.js 中全局导入 base64 解决了这个问题。
import {decode, encode} from 'base-64'
if (!global.btoa) { global.btoa = encode }
if (!global.atob) { global.atob = decode }
感谢您的回复。
Pradeep
2020-02-25
对我有用!谢谢 papay0,版本 7.9.1 确实有问题。
npm install [email protected]
expo r -c # restard expo without cache
你可以
rm -rf ./node_modules/ && npm i
Eydwales
2020-02-24
我找到了一个解决方法,但他们那边仍然有一个错误。 他们两天前刚刚发布了 7.9.1 版。 尝试使用 7.9.0。
yarn add [email protected]
我正在为此创建一个问题,请关注 此处 。
papay0
2020-02-24