TypeError:null 不是对象(评估“storagedTechs.split”)
Posted
技术标签:
【中文标题】TypeError:null 不是对象(评估“storagedTechs.split”)【英文标题】:TypeError: null is not an object (evaluating 'storagedTechs.split') 【发布时间】:2021-05-27 01:37:06 【问题描述】:我收到以下错误:可能未处理的承诺拒绝(id:0:网络请求失败)有时错误 id 会更改为 id:3。有人可以帮帮我吗?
从 'react' 导入 React, useState, useEffect; 从 'react-native' 导入 SafeAreaView, StyleSheet, Image, AsyncStorage ;
从 '../components/SpotList' 导入 SpotList;
从'../assets/logo.png'导入标志;
导出默认函数List()
const [techs, setTechs] = useState ([]);
useEffect(() =>
AsyncStorage.getItem('techs')
.then((storagedTechs) =>
const techsArray = storagedTechs.split(',').map(tech => tech.trim())
setTechs(techsArray)
)
,[]);
return (
<SafeAreaView style=styles.container>
<Image style=styles.logo source=logo/>
techs.map(tech => <SpotList key=tech tech=tech/>)
</SafeAreaView>
)
const 样式 = StyleSheet.create ( 容器: 弹性:1,
,
logo:
height: 32,
resizeMode: 'contain',
alignSelf:'center',
marginTop: 50
,
)
error in expo go
【问题讨论】:
是storagedTechs
设置 - 如果它为空,您将收到此错误
【参考方案1】:
我会尝试在 then 块之后添加 catch 块,比如
.then((storagedTechs) =>
const techsArray = storagedTechs.split(',').map(tech => tech.trim())
setTechs(techsArray)
)
.catch(err =>
if (err) console.error(err);
);
这将帮助您进一步调试。
【讨论】:
以上是关于TypeError:null 不是对象(评估“storagedTechs.split”)的主要内容,如果未能解决你的问题,请参考以下文章
TypeError:null 不是对象(评估 ''this.state.torchon')
“TypeError:null 不是对象(评估‘RCTVideoInstance.Constants’)”
TypeError:null 不是对象(评估'RNRandomBytes.seed')React Native
TypeError:null 不是对象(评估'this.state.initialPosition') - React Native