反应本机状态不更新功能

时间:2020-06-03 00:19:33

标签: reactjs react-native

反应本机状态未更新。警报中的位置返回空。 请帮助我

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();
});

1 个答案:

答案 0 :(得分:0)

尝试

const _location = useCallback(()=>{
    setLocation('Hi')
  },console.warn(location)
)

代替

const _location = () => {
  setLocation("Konum Ekle");
  alert(location);
}

基本上setState是异步的。因此,请在setLocation的回调中调用您的警报,这样一旦setLocation完成,您的警报就会生效。