AWS数据存储不保存Android数据库中的用户



我有一个代码,将保存用户在我的个人资料屏幕上的数据库,但代码在iOS上工作得很好,但在android上它抛出一个"可能未处理的承诺拒绝";与"TypeError:符号。asyncIterator没有定义。"请问如何解决Android上的问题,使其可以保存到数据库?我正在使用React Native。下面是代码片段:

import {Auth, DataStore} from 'aws-amplify';
const ProfileScreen = () => {
const [name, setName] = useState('');
const [bio, setBio] = useState('');
const [gender, setGender] = useState();
const [lookingfor, setLookingfor] = useState();
const isValid = () => {
return name && bio && gender && lookingfor;
};
const save = () => {
if(!isValid()) {
console.warn('Not valid');
return;
}
const newUser = new User({
name,
bio,
gender,
lookingfor,
image: 'https://notjustdev-dummy.s3.us-east-2.amazonaws.com/avatars/elon.png',
});
DataStore.save(newUser);
};
return ...

我一直在做同样的项目。当我这样做时,它对我有效:

npm install @azure/core-asynciterator-polyfill

然后补充说:

import '@azure/core-asynciterator-polyfill'; 

放在我正在处理的页面导入的最上方。

根据文档,由于save返回promise而不是执行操作本身,因此在save函数中添加await或subscribe;

await DataStore.save(newUser); 

DataStore.save(newUser).then(...);

最新更新