首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >适当的存储/多实例化组件设计

适当的存储/多实例化组件设计
EN

Stack Overflow用户
提问于 2018-09-06 20:02:25
回答 1查看 48关注 0票数 0

我有一个叫做runner的角度组件,在同一个屏幕上有三个它的实例。

它有两个链接选择,第一个称为“模型”,第二个称为“定义”,每个模型可能有多个定义。

OnInit I触发一个加载所有模型的效果(它被触发三次,每个组件实例一次,我不确定这是否可以),并将它存储在存储中(在同一个“段”中,一个模型数组)。

代码语言:javascript
复制
ngOnInit() {
  this.store.dispatch(new SimulationActions.LoadModels());
  this.models = this.store.pipe(select(fromSimulator.getModels));
}

问题是,如果我在第一个实例的第一个选择中选择模型A,我将在树实例的选择中获得A定义,因为它会触发相同的效果,并在成功中使用相同的选择器

代码语言:javascript
复制
modelChange() {
  this.store.dispatch(new 
       SimulationActions.LoadDefinitions(this.selectedModel));
  this.definitions = 
       this.store.pipe(select(fromSimulator.getDefinitions));
}

如果我在第二个实例中选择模型B,我将在树实例中对模型B进行定义,而在第一个实例中,我将选择模型A,但是选择了B子模型。

组件是完全相同的,除了这个东西效果/存储问题,它们是用来比较的,所以为每个实例编写不同的组件并不是解决方案。

有人能给我一点关于这件事的看法吗。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-07 06:09:55

你将不得不以某种方式区分你的选择器和效果。

对于您的效果,您必须创建不同的操作或使用有效载荷。

对于选择器,您必须使用不同的选择器或带道具的选择器

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52211391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档