Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果数据在未执行更改函数时被清除,如何设置_Javascript_Reactjs - Fatal编程技术网

Javascript 如果数据在未执行更改函数时被清除,如何设置

Javascript 如果数据在未执行更改函数时被清除,如何设置,javascript,reactjs,Javascript,Reactjs,当我选择开始日期和结束日期时,我使用了一个日期范围选择器,一旦更改将运行,这个API将执行,但是当我再次单击clear以清除日期时,会发生什么呢一旦更改执行,API命中,那么我将得到一个需要设置的错误,如果数据为空或未定义,那么它将不会执行,但我感到困惑 const date = (start, end) => { Axios.get( `localhost:5000/get/dash/?page=dash&start_date=${start}&end_dat

当我选择开始日期和结束日期时,我使用了一个日期范围选择器,一旦更改将运行,这个API将执行,但是当我再次单击clear以清除日期时,会发生什么呢一旦更改执行,API命中,那么我将得到一个需要设置的错误,如果数据为空或未定义,那么它将不会执行,但我感到困惑

const date = (start, end) => {
  Axios.get(
    `localhost:5000/get/dash/?page=dash&start_date=${start}&end_date=${end}`,
  )
    .then((res) => {
      console.log("date api data", res.data);
      console.log("datefetch")
    })
    .catch((err) => {
      Swal.fire({
        text: "Failed to Fetch the Data ! Please Reload",
        icon: "error",
        confirmButtonColor: "#0BB7A7",
      });
      console.log("apierror",err)
    });
    
}
function onChange(dates, dateStrings) {
 date(dateStrings[0],dateStrings[1]) 
console.log("click date")
}
错误

GET http://localhost:5000/get/dash/?page=dash&start_date=&end_date= 500 (Internal Server Error)
apierror Error: Request failed with status code 500
    at createError (createError.js:16)
    at settle (settle.js:17)
    at XMLHttpRequest.handleLoad (xhr.js:61)

仅当日期可用时调用函数:

dateString[0] && // check both if both are required
date(dateStrings[0],dateStrings[1])

如果希望仅在日期可用时执行API

if (dateStrings && dateStrings.length > 1) {
    date(dateStrings[0], dateStrings[1]); 
}

为什么不在调用date之前检查这些值是否存在?获取错误dateString未定义请先检查dateString
dateString&&dateString[0]&
不使用此值,否则将再次获取相同的错误