почему топор ios fetch не работает на мобильном телефоне? - PullRequest
3 голосов
/ 27 апреля 2020

У меня есть следующая настройка, которая работает на моем P C, но не на мобильном, даже когда есть данные для извлечения.

useEffect(() => {
    const {username, room} = queryString.parse(location.search);
    setRoom(room);

    if (messages.length > 3) {
        let lastMessage = messages.pop();
        setMessss([lastMessage]);
        const fetchHistory = async () => {
            try {
                const result = await axios.get(`https://example.com/messages/${room}`,);
                setMessss(result.data.messagesFromAPI);
            } catch (error) {
                console.log(error);
            }
        };
        fetchHistory();
    }
}, [messages]);

У меня также есть другой хук useEffect, который работает на P C для componentDidMount, но не работает, если я перезагружаю страницу более одного раза, но я хочу, чтобы она работала при каждой перезагрузке страницы, но не загружается ... это может быть потому, что я использую бесплатную подписку (M0) на Mongodb Атлас? Хотя из метрик моя база данных не исчерпала или не достигла емкости.

useEffect(() => {

    const {username, room} = queryString.parse(location.search);
    // setRoom(room);

    axios.get(`https://example.com/messages/${room}`)
    .then(response => {
        const history = response.data.messagesFromAPI;
        setMessss(history);
    })
    .catch(error => {
        console.log(error.response);
    });
},[]);

...