【问题标题】:How to inject ngrx store into a library如何将ngrx store 注入到库中
【发布时间】:2017-05-28 19:05:32
【问题描述】:

我正在创建一个拖放角度模块,我希望将其外部化并发布到 npm。该库本质上将允许用户定义拖放区域并将 ngrx 操作与它们相关联。

const DND_RULES: DndRule[] = [
   new DndRule('area1', 'area2', MOVE_AREA1_TO_AREA2_ACTION.getAction),
   new DndRule('area2', 'area1', COPY_AREA2_TO_AREA2_ACTION.getAction),
]

然后,提供的服务将调度由规则产生的操作。

我的问题是我需要将此库与消费者的商店集成。 有没有办法通过一些静态模块方法提供 ngrx 商店,或者以某种方式在幕后将其链接到我的商店? DndModule.provideStore(???) 我不确定这在幕后会是什么样子

【问题讨论】:

  • 为什么两个问题的上下文不同? other one
  • 一个是问如何注入ngrx,另一个是问如何注入原始数据。如果可以同时回答,请提供您的解决方案。否则我会期望答案会有所不同。
  • 当您使用商店并将其放置在公共模块中时,也可以共享数据。你想注入图书馆的东西!详细说明您的问题
  • 您是说外部库可以代表我的应用程序商店发送操作?那是我的问题。我想将模块外部化。

标签: angular typescript dependency-injection ngrx ngrx-store


【解决方案1】:

你可以看看路由器存储是如何实现的,https://github.com/ngrx/router-store。 尝试使用您的商店的人必须进行一些配置并导入他们想要使用的必要操作。 import { go, replace, search, show, back, forward } from '@ngrx/router-store';

【讨论】:

    猜你喜欢
    • 2018-01-30
    • 2019-06-07
    • 2018-08-08
    • 2016-11-13
    • 2017-08-30
    • 1970-01-01
    • 1970-01-01
    • 2017-12-02
    • 1970-01-01
    相关资源
    最近更新 更多