我在我的应用中使用了React Native和Firebase。我突然意外收到了这个错误:
SyntaxError: Unexpected end of JSON input.
at doWrite(_stream_writable.js)
at Promise.resolve.then.then.then.catch.then.message
在我的反应包装器中它指向这段代码:
onProfilesChange = async (snap) => {
var allProfilePromises = []
snap.forEach((child) => {
var profileId = child.val().profileId
var alreadyAdded = this.state.profiles.some(x => x.id === profileId)
if (alreadyAdded === false) {
var profilePromise = this.registerOnProfileChanges(profileId)
allProfilePromises.push(profilePromise)
}
})
await Promise.all(allProfilePromises)
var profileCount = snap.numChildren()
this.setState({ profiles: this.state.profiles, loading: false, profileCount: profileCount })
if (profileCount <= 0) {
this.getUserName()
}
}
在调用componentMount时运行。现在错误很明显,但我不知道为什么要生成它,也不知道如何通过它。这段代码已经工作了好几个月而我没有改变它。
提前感谢。
答案 0 :(得分:1)
我遇到了同样的问题。它与图像有关
我通过更改react-native-img-cache的版本来解决这个问题
运行这个:
npm install react-native-img-cache@1.4.0
答案 1 :(得分:1)
尝试清除缓存并重启服务器......
cd android & gradlew clean & cd .. & rm -rf node_modules/ & npm cache clean --force & yarn install & react-native run-android
您可能希望使用npm i
代替yarn install