Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 反应->;国家管理_Reactjs_React Router - Fatal编程技术网

Reactjs 反应->;国家管理

Reactjs 反应->;国家管理,reactjs,react-router,Reactjs,React Router,我是一个有反应的初学者。我想构建一个类似于页面(howmuchtomakenapp.com)的应用程序。这意味着,对于用户在路线上所做的每一个选择,价格都将添加到总价格中,但当使用“后退”按钮返回时,价格将返回到上一个价格。我知道这是状态管理,但事实上,即使在阅读了整个react文档之后,我也不知道如何执行该操作。react状态存储在组件的本地。当它需要与其他组件共享时,通过道具传递。实际上,这意味着需要访问可变值的组件将保持该值的状态,如果子组件可以更改该值,则必须传递回调来处理更改 要了解有

我是一个有反应的初学者。我想构建一个类似于页面(howmuchtomakenapp.com)的应用程序。这意味着,对于用户在路线上所做的每一个选择,价格都将添加到总价格中,但当使用“后退”按钮返回时,价格将返回到上一个价格。我知道这是状态管理,但事实上,即使在阅读了整个react文档之后,我也不知道如何执行该操作。

react状态存储在组件的本地。当它需要与其他组件共享时,通过道具传递。实际上,这意味着需要访问可变值的组件将保持该值的状态,如果子组件可以更改该值,则必须传递回调来处理更改

要了解有关组件和道具的更多信息,请访问React文档本身的链接:


我建议您看看Redux(),它是JavaScript应用程序的可预测状态容器。

React状态存储在本地组件中。当它需要与其他组件共享时,通过道具传递。实际上,这意味着需要访问可变值的组件将保持该值的状态,如果子组件可以更改该值,则必须传递回调来处理更改

要了解有关组件和道具的更多信息,请访问React文档本身的链接:


我建议您看看Redux(),它是JavaScript应用程序的一个可预测的状态容器。

根据您的描述,我假设您将价格作为一个数字,并且添加到其中的步骤越多

我认为你不需要做任何特别的事情,除了:

我的方法是保留一个包含所有价格的数组,这样当你点击prev按钮时,你就可以删除最后一个。每次选择一个并导航到下一条路线时添加一个价格。要显示总数,只需将数组相加:

const prices = [3.5,5,10,5.76,23];
const total = prices.reduce((p, c) => p + c, 0);

这有帮助吗?

根据您的描述,我假设您将价格作为一个数字,并将更多步骤添加到价格中

我认为你不需要做任何特别的事情,除了:

我的方法是保留一个包含所有价格的数组,这样当你点击prev按钮时,你就可以删除最后一个。每次选择一个并导航到下一条路线时添加一个价格。要显示总数,只需将数组相加:

const prices = [3.5,5,10,5.76,23];
const total = prices.reduce((p, c) => p + c, 0);

这有帮助吗?

你能澄清你的问题吗?是否要根据用户所在的页面修改值?您指的是哪个后退按钮?应用程序上的后退按钮或浏览器上的上一页?@jules抱歉,我没有指定,我是指我的应用程序上的上一页按钮。@Alex Ironside我知道这可能会让人困惑,我想创建类似于我上面链接的页面的内容,我想做的是:用户从3个选项中选择1个,价格添加到状态,重定向到下一页。在下一页,再次选择3个选项中的1个或任何选项,价格会上涨,但如果他错误地单击了另一个选项,使用“后退”按钮,他可以返回上一个价格的1步。你能澄清你的问题吗?是否要根据用户所在的页面修改值?您指的是哪个后退按钮?应用程序上的后退按钮或浏览器上的上一页?@jules抱歉,我没有指定,我是指我的应用程序上的上一页按钮。@Alex Ironside我知道这可能会让人困惑,我想创建类似于我上面链接的页面的内容,我想做的是:用户从3个选项中选择1个,价格添加到状态,重定向到下一页。在下一页上,再次选择3个选项中的1个或任何选项,价格会上涨,但如果他错误地单击了另一个选项,使用“后退”按钮,他可以返回前一个价格的1步。