Javascript 如何在ajax请求后使组件重新呈现

Javascript 如何在ajax请求后使组件重新呈现,javascript,reactjs,rerender,react-lifecycle,Javascript,Reactjs,Rerender,React Lifecycle,在ReactJs中的一个函数中重新加载相同的组件。我正在添加注释,然后我想重新加载相同的组件。有人能帮忙吗 commentPost() {... axios.defaults.headers.common['Authorization'] = getToken; axios.post(apiBaseUrl+'v1/comments/post-comment',input) .then(function (response) { cons

在ReactJs中的一个函数中重新加载相同的组件。我正在添加注释,然后我想重新加载相同的组件。有人能帮忙吗

commentPost() {...
    axios.defaults.headers.common['Authorization'] = getToken;
        axios.post(apiBaseUrl+'v1/comments/post-comment',input)
        .then(function (response) {
          console.log("Comment Post",response);
          //here I want to rerender this component itself
        })
        .catch(function (error) {
          console.log(error);
        });...

有两种方法可以使同一组件渲染

首先:使用
setState
方法更新当前组件的状态

setState()
将始终导致重新渲染,除非
shouldComponentUpdate()
返回false。如果正在创建可变对象 无法在中实现已使用和条件呈现逻辑
shouldComponentUpdate()
,仅当新的 状态不同于前一个状态将避免不必要的 重新渲染

Second:如果不想更新当前组件的任何状态,可以调用
forceUpdate
。您可以像调用this.forceUpdate()一样调用它

调用
forceUpdate()
将导致在 组件,正在跳过
shouldComponentUpdate()
。这将触发 子组件的正常生命周期方法,包括
shouldComponentUpdate()
每个子级的方法。反应仍然只是 如果标记发生更改,请更新DOM


假设您正在执行一个异步请求,并从中获得响应,则您希望使用所获得的数据更新组件的状态,因此,
setState
将是您前进的方向

有两种方法可以使同一组件渲染

首先:使用
setState
方法更新当前组件的状态

setState()
将始终导致重新渲染,除非
shouldComponentUpdate()
返回false。如果正在创建可变对象 无法在中实现已使用和条件呈现逻辑
shouldComponentUpdate()
,仅当新的 状态不同于前一个状态将避免不必要的 重新渲染

Second:如果不想更新当前组件的任何状态,可以调用
forceUpdate
。您可以像调用this.forceUpdate()一样调用它

调用
forceUpdate()
将导致在 组件,正在跳过
shouldComponentUpdate()
。这将触发 子组件的正常生命周期方法,包括
shouldComponentUpdate()
每个子级的方法。反应仍然只是 如果标记发生更改,请更新DOM


假设您正在执行一个异步请求,并从中获得响应,则您希望使用所获得的数据更新组件的状态,因此,
setState
将是您的前进方向

React触发组件在状态更改的情况下重新呈现。您需要更新组件的状态,以便重新渲染它以显示更新状态。您需要设置状态以导致对重新呈现器作出反应。如果状态更改,则react触发器组件将重新呈现。您需要更新组件的状态,以便重新呈现它以显示更新的状态。您需要设置状态以引起对重新渲染器的反应。如何写入forceUpdate?像这样:component.forceUpdate(callback)
this.forceUpdate()
是调用forceUpdate的方法我得到了一个错误:“无法读取未定义的'forceUpdate'属性”我必须为我的所有字段设置状态??你说的是什么,为所有fieldshow设置状态来编写forceUpdate?像这样:component.forceUpdate(callback)
this.forceUpdate()
是调用forceUpdate的方法我得到了一个错误:“无法读取未定义的属性‘forceUpdate’”我必须为我的所有字段设置状态??你说的所有字段设置状态是什么意思