反应本机状态未更新。警报中的位置返回空。 请帮助我
function Home({ route, navigation }) {
const [location, setLocation] = useState('');
const _appStart = () => {
_location();
}
const _location = () => {
setLocation("Konum Ekle");
alert(location);
}
React.useEffect(() => {
const unsubscribe = navigation.addListener('focus', () => {
_appStart();
});
答案 0 :(得分:0)
尝试
const _location = useCallback(()=>{
setLocation('Hi')
},console.warn(location)
)
代替
const _location = () => {
setLocation("Konum Ekle");
alert(location);
}
基本上setState是异步的。因此,请在setLocation的回调中调用您的警报,这样一旦setLocation完成,您的警报就会生效。