强制重新渲染

时间:2019-09-03 21:26:19

标签: reactjs react-hooks

我第一次使用react钩子,当我单击Delete按钮时,我需要刷新页面以查看该项目已被删除,如何在删除后立即重新渲染组件api调用?

 function Component(){
        const [data, setData] = useState({ contact: [] });

        useEffect(() => {
          const fetchData = async () => {
          const result = await axios("url");
          setData(result.data);
        };
        fetchData();
      }, [props])
        async function handleDelete(id) {
            try {
                await axios(`anotherurl`);
             }  catch (error) {
                console.log(error);
             }
           }
        return(
            data.contact.map(contact => (
                <li key={contact._id} >
                <p> contact.name</p>
                <button onClick={()=>handleDelete(contact._id)}>
                delete
                </button>    
                </li>
              ))
         )
        }

2 个答案:

答案 0 :(得分:0)

签出useState钩子:https://reactjs.org/docs/hooks-state.html

useStatesetState类似。将新值传递给useState(newValue)时,组件将重新呈现

希望这能回答您的问题!

答案 1 :(得分:-1)

有一种肮脏的选择(不推荐):

CRAN