Redux 在何处迭代JSON对象
我正在用角度和角度来建造一些东西 我的对象具有具有特定值的对象。让我们假装:Redux 在何处迭代JSON对象,redux,json,angular,ngrx,angular-redux,Redux,Json,Angular,Ngrx,Angular Redux,我正在用角度和角度来建造一些东西 我的对象具有具有特定值的对象。让我们假装: name: "john", sex: "m" children: [ { name: "joe", sex: "m" children: [ { name: "mary", sex: "f" children: [ { name: "ryan", sex: "m" children: [] } ]
name: "john",
sex: "m"
children: [
{
name: "joe",
sex: "m"
children: [
{
name: "mary",
sex: "f"
children: [
{
name: "ryan",
sex: "m"
children: []
}
]
}
]
],
name: "sue",
sex: "f"
children: [
{
name: "joe",
sex: "m"
children: [
{
name: "mary",
sex: "f"
children: [
{
name: "ryan",
sex: "m"
children: []
}
]
}
]
]
假设我想:
File Structure:
app
|store
|actions
|models
|reducers
|effects
|views
|john
|.html
|.ts
|sue
|.html
|.ts
|app.ts etc
我认为你的许多观点可以通过使用
选择器来回答
1.)您可以制作多个选择器。也许您可以创建一个选择器,它接受名称(字符串)的输入,并可以为您提供它所拥有的子项的数量。还有另一个选择器,它可以告诉你这个名字的孙辈数量。然后可以将其组合到组件中。也许你可以做一个选择器来计算它们。这取决于你
2)回答1
3.)您可以将其作为选择器写入存储文件夹中的selectors.ts
,然后可以在存储的select
参数中传递这些选择器函数
4.)最快和最好的方法是使用普通JS或类似lodash的JS库。Angular内置了很多东西,但它是一个UI/视图库,而不是一个使普通JavaScript操作更快的库
5.)我会有一个状态片,就像前面提到的那样,使用选择器函数将状态转换为我感兴趣的数据。嘿!谢谢你的回复。我只是做了一个编辑,我会先做男性,然后再做女性。(我的实际项目的范围要大一点,我会多次分支)你还会有一部分状态并使用选择器函数吗?但无论哪种方式,我都会立即阅读选择器。非常感谢你的帮助!:)是的,我个人会的。您可以将选择器视为getter
函数。谢谢。所以我有一堆不同的组件,每个组件可能使用2-4个不同的选择器,或者有时使用相同的选择器。您能为每个组件制作一个组件名称选择器吗?或者只是一个大的通用选择器.ts?还有一个附带问题——我目前没有index.ts。我刚刚在app.module中的StoreModule.forRoot({})中添加了不同的简化程序。这是一种糟糕的做法吗?请查看StoreModule.forFeature,将每个功能缩减器注册为功能。我会将所有选择器函数放在selectors.ts中,导出它们,然后在必要时导入。