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

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

避免請求對象上的空字符串值

避免請求對象上的空字符串值

慕尼黑5688855 2021-12-23 15:16:45
對于某個 axios 請求:            API.post(              `v${process.env.REACT_APP_API_VERSION}/register/company/`,              {                type: values.type,                dba: values.dba,                ein: values.ein,                file_type: values.file_type,              },如果未分配值(仍然是“”),我想避免發送參數。即我想知道在我的請求對象中只包含非空參數的最干凈的方法。我可以使用 if 檢查來做到這一點,但對較大請求中的每個項目都這樣做是沒有意義的。例如:            const postData = {              first_name: values.first_name,              last_name: values.last_name            };            if (values.middle_name !== "") {              postData.middle_name = values.middle_name;            }謝謝
查看完整描述

2 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

你可以嘗試這樣的事情:


Object.keys(values).forEach((key) => {

  if(!values[key]) delete values[key];

})

它的主要作用是刪除values對象內的任何虛假元素,其中包括空字符串。


查看完整回答
反對 回復 2021-12-23
?
慕桂英4014372

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

我能想到的最短的解決方案。對于一般解決方案,我會使用包裝器,但如果您只需要檢查少數幾個屬性,這個就足夠了。


        const v = values; 

        API.post(

          `v${process.env.REACT_APP_API_VERSION}/register/company/`,

          {

            ...(v.type&&{type: v.type}),

            ...(v.dba&&{dba: v.dba}),

            ...(v.ein&&{type: v.ein}),

            file_type: values.file_type,

          },


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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