亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

根據 ReactJS 中的值更改 axios get url

根據 ReactJS 中的值更改 axios get url

江戶川亂折騰 2021-12-23 19:38:03
這是我的第一個 React 應用程序,我正在嘗試使用 axios 獲取 API??梢愿鶕蹈?URL。我的代碼是fetchURL(page,checked) {  if(checked)  {     const apiUrl = 'firstApiURL'  }  else {     const apiUrl = 'secondApiURL';  }   axios.get(apiUrl)......}它說 apiUrl 未定義。我認為根據另一個變量更改 API url 會很容易。任何幫助都受到高度贊賞。
查看完整描述

3 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

常量的作用域是它們聲明的塊(在分別與 和關聯的和之間,{并且在該范圍之外不可訪問。}ifelse


在塊外定義一個變量并使用它。


fetchURL(page,checked) {

  let apiUrl;

  if(checked)

  {

    apiUrl = 'firstApiURL'

  }

  else {

    apiUrl = 'secondApiURL';

  }

   axios.get(apiUrl)......

}

然后,您可以使用默認值而不是else.


fetchURL(page,checked) {

  let apiUrl = 'secondApiURL';

  if(checked)

  {

    apiUrl = 'firstApiURL'

  }

  axios.get(apiUrl)......

}

或者進一步簡化并仍然使用 const


fetchURL(page, checked) {

  const apiUrl = checked ? 'firstApiURL' : 'secondApiURL';

  axios.get(apiUrl);

}


查看完整回答
反對 回復 2021-12-23
?
明月笑刀無情

TA貢獻1828條經驗 獲得超4個贊

在您的代碼中,const它們在塊范圍內定義,{}因此它們在外部未定義。


使用let以便您可以分配給它,并在if/之外聲明它else


let apiUrl;

if (checked) {

  apiUrl = 'firstApiURL'

} else {

  apiUrl = 'secondApiURL';

}

axios.get(apiUrl)......

}

有關塊語句和范圍的更多信息,請閱讀https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/statements/block


查看完整回答
反對 回復 2021-12-23
?
烙印99

TA貢獻1829條經驗 獲得超13個贊

const關鍵字 create 常量僅存在于創建它們的塊中(let而const單詞創建塊范圍變量)。


if() { }和else { }是我們創建的塊apiUrl,并且 ``apiUrl 不存在于它們之外。


你可以寫let變量外if和else,然后寫信給它一定的價值。例如:


fetchURL(page,checked) {

  let apiUrl;

  if(checked)

  {

     apiUrl = 'firstApiURL'

  }

  else {

     apiUrl = 'secondApiURL';

  }

   axios.get(apiUrl)......

}


查看完整回答
反對 回復 2021-12-23
  • 3 回答
  • 0 關注
  • 202 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號