【问题标题】:Unhandled Runtime Error Error: Request failed with status code 500未处理的运行时错误错误:请求失败,状态码为 500
【发布时间】:2022-01-05 01:26:18
【问题描述】:

我收到未处理的运行时错误 错误:请求失败,状态码为 500

当我 console.log(gotid ) 我得到 id
但是当我将它传递给网络选项卡中的 axios 时,它变成了 https://ask-over.herokuapp.com/questone/undefined

const [Item, setItem] = useState([]);
  const router = useRouter();
  var id = router.query.itmid;
  var gotid = id;
  console.log(gotid);

  useEffect(() => {
    axios
      .get("https://ask-over.herokuapp.com/questone/" + gotid)
      .then((result) => {
        console.log(result);
        // document.title = result.data[0].Name;
        setItem(result.data);
      });
    //  console.table(this.state.items);
  }, [id]);


【问题讨论】:

标签: next.js


【解决方案1】:

是的,只需在 useEffect 中执行此操作:

useEffect(() => {
   if(id != null){
      axios.get(url +"/"+id).then(...)
   }
},[id])

【讨论】:

    【解决方案2】:

    无需创建额外的变量:

    
    const [Item, setItem] = useState([]);
      const router = useRouter();
      var id = router.query.itmid;
      console.log(id);
    
      useEffect(() => {
        axios
          .get("https://ask-over.herokuapp.com/questone/" + id)
          .then((result) => {
            console.log(result);
            // document.title = result.data[0].Name;
            setItem(result.data);
          });
        //  console.table(this.state.items);
      }, [id]);
    
    

    【讨论】:

      猜你喜欢
      • 2018-06-10
      • 1970-01-01
      • 2020-05-29
      • 1970-01-01
      • 2018-08-09
      • 1970-01-01
      • 2019-07-02
      • 2015-07-11
      • 1970-01-01
      相关资源
      最近更新 更多