如果要在请求中提交计算,是否应将计算存储在Redux存储中?
我有一个表单,要求用户输入一些数字。然后,使用存储在Redux存储中的数字进行一些计算。现在,我不将计算存储在Redux存储中,而是在组件的渲染函数中进行计算如果要在请求中提交计算,是否应将计算存储在Redux存储中?,redux,calculation,Redux,Calculation,我有一个表单,要求用户输入一些数字。然后,使用存储在Redux存储中的数字进行一些计算。现在,我不将计算存储在Redux存储中,而是在组件的渲染函数中进行计算 现在,我需要提交的表单在HTTP请求中包含这些计算值。我该怎么做呢?我应该让Redux商店保存计算结果吗 如果您计划在UI中使用原始值和计算值,我可以看到将两者都保留在redux存储中的好处 如果您只需要在发出HTTP请求时使用计算,并且计算出的数据没有用作UI的一部分,那么更简洁的实现可能是将执行计算的函数分离到实用程序文件中,以及导入
现在,我需要提交的表单在HTTP请求中包含这些计算值。我该怎么做呢?我应该让Redux商店保存计算结果吗 如果您计划在UI中使用原始值和计算值,我可以看到将两者都保留在redux存储中的好处 如果您只需要在发出HTTP请求时使用计算,并且计算出的数据没有用作UI的一部分,那么更简洁的实现可能是将执行计算的函数分离到实用程序文件中,以及导入和使用组件/容器或操作文件中需要计算的函数 我认为这将在每个文件中创建一个更清晰的关注点分离,如果需要,可以在多个文件中使用计算实用程序
// Utility file
export const calculationFunction = (someParam) => {
\\ Calculation here
return yourAnswer
}
然后
// Actions File (Note this is how my action dispatch is set up, yours might look a bit different
import { calculationFunction } from 'utilities/calculations';
export const sendData = (data) => ({
type: types.SEND_DATA,
responseTypes: [types.SEND_DATA_SUCCESS, types.SEND_DATA_FAILURE],
promise: (client: any) => client.post('/data', calculationFunction(data)),
});