Javascript 我的React组件能否侦听服务器中的更改并更新自身?

Javascript 我的React组件能否侦听服务器中的更改并更新自身?,javascript,reactjs,redux,react-redux,Javascript,Reactjs,Redux,React Redux,我有一个React组件,它呈现一个项目列表。我有一个不同的组件,允许用户添加一个新项目。此新项是通过对服务器进行异步调用创建的。呈现列表的组件能否侦听服务器中的更改并更新自身 新项目是通过模式添加的,因此当模式关闭时,需要触发一个操作来更新呈现项目列表的组件。现在我必须刷新浏览器以反映UI中的更改 如果关闭模态,则无法触发对呈现项列表的组件的更改。我考虑将异步调用的结果(一个列表项)添加到状态中,使用redux作为一种导致重新渲染的方法。但是,我正在与之交互的客户端不会返回项目所需的所有属性(作

我有一个React组件,它呈现一个项目列表。我有一个不同的组件,允许用户添加一个新项目。此新项是通过对服务器进行异步调用创建的。呈现列表的组件能否侦听服务器中的更改并更新自身

新项目是通过模式添加的,因此当模式关闭时,需要触发一个操作来更新呈现项目列表的组件。现在我必须刷新浏览器以反映UI中的更改

如果关闭模态,则无法触发对呈现项列表的组件的更改。我考虑将异步调用的结果(一个列表项)添加到状态中,使用redux作为一种导致重新渲染的方法。但是,我正在与之交互的客户端不会返回项目所需的所有属性(作为Typescript接口的一部分)。因此,这种方法不起作用。强制对显示列表的组件重新渲染的另一种方法。但是再一次,我真的想不出一种可行的方法,以及如何触发componentDidUpdate挂钩。

如果(服务器支持){

使用

}否则{

使用

}如果(服务器支持){

使用

}否则{

使用


}

如果异步调用在其响应中获得更改的内容,则它可以更新Redux状态,然后其他组件应该更新。Yes@RemcoGerlich。这正是我心目中的工作方式。但是,异步调用返回的项是Collection+JSON超媒体格式,与服务器返回的原始项相比,缺少一些属性。此外,如果我使用新操作将返回的项添加到列表中,是否违反了单一真相源模式?只是大声思考。为了使这个工作流程正常工作,我不得不在Typescript中操作数据模型,在整个代码库中创建类型错误。这是一个完整的列表(关于缺少的属性、新操作、Typescript中的数据模型)这让人大吃一惊,这应该作为代码出现在您的问题中,这样我们就可以说一些有用的东西了。这只是正常的方式。如果异步调用在其响应中得到更改的内容,则它可以更新Redux状态,然后其他组件应该更新。Yes@RemcoGerlich。这正是我心目中的工作方式。但是,异步调用返回的项是Collection+JSON超媒体格式,与服务器返回的原始项相比,缺少一些属性。此外,如果我使用新操作将返回的项添加到列表中,是否违反了单一真相源模式?只是大声思考。为了使这个工作流程正常工作,我不得不在Typescript中操作数据模型,在整个代码库中创建类型错误。这是一个完整的列表(关于缺少的属性、新操作、Typescript中的数据模型)这让人大吃一惊,这应该作为代码出现在您的问题中,这样我们就可以说一些有用的东西了。这只是正常的方式。