我正在创建选择器以从状态中获取派生数据,但是我遇到了一个问题,其中我的一个输入选择器依赖于另一个输入选择器的结果,我找不到解决方法它。我的Redux状态是可序列化和规范化的,类似于关系数据库,简化后的版本如下所示:
app.delete('/api/devices/:id', (req, res) => {
db.all('delete from devices where id = ' + req.params.id, function (err) {
console.log(this.changes)
if (err) {
return res.status(500).send(err)
}
else {
return res.status(204).send()
}
})
})
这意味着必须先完成任务1,然后才能启动任务2,依此类推。我正在尝试编写选择器,以根据每个任务的前任派生每个任务的开始/结束日期,或者使用“手动开始”(如果存在)。
最初的直觉是编写如下所示的选择器:
const state = {
tasks: {
1: {
manualStart: '1/1/2019'
duration: 3
},
2: {
manualStart: undefined
duration: 2
},
3: {
manualStart: undefined
duration: 5
},
...
},
taskPredecessors: {
2: 1,
3: 2,
...
}
}
如何创建选择器以获取任务的前置任务结束日期?我想获取任务的前身ID,然后使用该ID调用getTaskEnd选择器。我不能将一个的结果用作另一个的参数。
P.S。 -我知道这没有正确记录。我计划使用re-reselect。只是还没有到那一点。