編輯功能-載荷裡空欄位沒有傳

Neon1204發表於2024-06-04

問題:這次的編輯功能的表單有很多欄位,有一些沒有設定必填,測試發現清空後沒有更新還是上一次資料
定位問題:
1.回現問題-檢視請求載荷發現沒有空字串的欄位了
2.因為都是加了.trim(),懷疑是不是element不同版本對於空字串的處理造成的
試驗->去除.trim還是一樣的問題
繼續懷疑-》是不是元件庫的問題
3.後端說 編輯時如果什麼也不傳就不知道對這個欄位有什麼操作
同意,繼續排查
4.是不是axios配置了什麼

點選檢視程式碼
$axios.interceptors.request.use(
  config => {
    setRequestHeaders(config)
    logRequest(config)
    // 預設刪除請求中空白欄位 extraConfig
    const noEmpty = has(config, 'noEmpty') ? config.noEmpty : true
    if (noEmpty && config.data) {
      config.data = removeEmptyProperties(config.data)
    }
    if (noEmpty && config.params) {
      config.params = removeEmptyProperties(config.params)
    }
    return config
  },
  error => {
    handleError(error)
    return Promise.reject(error)
  }
)

懷疑element元件庫都沒有懷疑axios配置,檢視請求攔截器還真是
解決問題:
最後請求方法配上 noEmpty: false
總結:經驗+1 排查過程有點呆

相關文章