代码之家  ›  专栏  ›  技术社区  ›  James Alexander

如何访问控制台中的ngrx存储?

  •  0
  • James Alexander  · 技术社区  · 4 年前

    我知道这有点不,但在我的浏览器控制台中,我如何访问ngrx redux商店?redux工具显然可以做到这一点,但我只希望能够通过控制台对其进行检查。是全球性的吗?如果是,它叫什么名字?谢谢

    0 回复  |  直到 4 年前
        1
  •  3
  •   Mateusz Klimentowicz    3 年前

    我认为(并希望)如果应用程序中没有明确的暴露,它将无法工作。

    您可以使一个函数全局可用,该函数读取当前状态并在控制台中显示它。这样地:

      @NgModule({
        declarations: [...],
        imports: [...],
        bootstrap: [...],
      })
      export class AppModule {
        public constructor(private store: Store<unknown>) {
          this.exposeStoreToGlobal();
        }
    
        public exposeStoreToGlobal() {
          if (!environment.production) {
            globalThis.showStoreSnapshot = () => {
              this.store.pipe(first()).subscribe((snapshot) => console.log(snapshot));
            };
          }
        }
      }
    

    然后,只要在控制台中随时调用它:

    enter image description here