首页 > 解决方案 > 我收到一个错误:“JSON 输入意外结束”。我做错了什么?

问题描述

为什么我在我非常简单的应用程序上出现此错误?问题可能出在后端吗?我尝试使用 Postman 及其工作发送 JSON 对象,但在 React (17.0.2) 中我在控制台上收到此错误。

import React, { useState, useEffect } from "react";

const TodoItem = ({ item }) => {
  const [todoItem, setTodoItem] = useState(item);        //This got just an object from outside
  const [isModified, setIsModified] = useState(false);
  
  useEffect(() => {
    if (isModified) {
      fetch(`http://localhost:8080/api/todoitems/${todoItem.id}`, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
        },
        body: JSON.stringify(todoItem),
        
      })
        .then((response) => response.json())
        .then((data) => {
            setTodoItem(data);
            setIsModified(false);
          
        });
        
    }
  }, [todoItem, isModified]);


  return (
    <>
      {" "}
      <input
        type="checkbox"
        checked={todoItem.done}
        onChange={() => {
          setIsModified(true);
          setTodoItem({ ...todoItem, done: !todoItem.done });
        }}
      />{" "}
      <span>{item.task}</span>
    </>
  );
};

export default TodoItem;

标签: jsonfetchuse-effect

解决方案


推荐阅读