第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在反應(yīng)應(yīng)用程序的函數(shù)調(diào)用中使用時(shí),Axios post 不返回?cái)?shù)據(jù)

在反應(yīng)應(yīng)用程序的函數(shù)調(diào)用中使用時(shí),Axios post 不返回?cái)?shù)據(jù)

胡說(shuō)叔叔 2022-10-27 15:08:55
我在我的反應(yīng)應(yīng)用程序中使用 axios 發(fā)布請(qǐng)求。發(fā)布請(qǐng)求工作正常,我在控制臺(tái)日志中獲得響應(yīng)數(shù)據(jù)。但我想返回該數(shù)據(jù)以在網(wǎng)頁(yè)中呈現(xiàn)。任何幫助是極大的贊賞。謝謝你。這是我發(fā)出 axios 請(qǐng)求的函數(shù)。function _toRoomName(title) {const axios = require('axios');axios({              method: "POST",               url:"hashroomname.php",              data: {                roomname: title              }           }).then((response) => {                console.log(response.data);                return response.data;          }).catch((error) => {               return error;           });}這是我的渲染方法,需要渲染返回的響應(yīng)。<Text className = 'titled'>    { _toRoomName(title) } //I want result here </Text>
查看完整描述

2 回答

?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊

您在return函數(shù)調(diào)用中缺少 a - 您是從內(nèi)部then而不是外部承諾返回


function _toRoomName(title) {

    return axios({

              method: "POST", 

              url:"hashroomname.php",

              data: {

                roomname: title 

             }

           }).then((response) => {

                console.log(response.data);

                return response.data;

          }).catch((error) => { 

              return error;

           });

}

但這不會(huì)真正起作用。您不能將承諾嵌入到 中<Text>,您需要將其提升到外部狀態(tài)


例如


const [ data, setData ] = useState(null)


useEffect(() => {

   _toRoomName(title)

     .then(response => {

       setData(response)

     })

}, [])


return (

  <Text className = 'titled'>

    {data}

  </Text>

)

nowdata在加載<Text>之前為空,在有數(shù)據(jù)之前為空


查看完整回答
反對(duì) 回復(fù) 2022-10-27
?
小怪獸愛(ài)吃肉

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊

解決方案是:1)使您的功能異步。


async function _toRoomName(title) {

          const axios = require('axios');

            axios({

                  method: "POST", 

                  url:"hashroomname.php",

                  data: {

                    roomname: title 

                 }

               }).then((response) => {

                    console.log(response.data);

                    return response.data;

              }).catch((error) => { 

                  return error;

               });

    }

2)將您的函數(shù)移動(dòng)到 componentDidMount() 并將結(jié)果存儲(chǔ)在狀態(tài)中。在渲染方法中使用該狀態(tài)。


componentDidMount() {

const axios = require('axios');

axios({

              method: "POST", 

              url:"hashroomname.php",

              data: {

                roomname: title 

             }

           }).then((response) => {

                this.setState({state:response.data})

                

          }).catch((error) => { 

              return error;

           });

}


查看完整回答
反對(duì) 回復(fù) 2022-10-27
  • 2 回答
  • 0 關(guān)注
  • 166 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)