Angular中akitaConfig应放在什么位置才能实现全局配置生效?
Akita 全局开启
resettable配置的正确方案 你之前的配置不生效的核心原因:akitaConfig 需要在任何Akita Store实例被创建之前调用,放在app.component.ts构造函数中时,Angular依赖注入体系可能已经提前初始化了部分根级Store,导致配置没有被后续创建的Store继承。
正确配置步骤
- 找到Angular应用的入口文件,通常为
src/main.ts - 在引导应用根模块/根独立组件之前,调用全局配置方法:
NgModule模式应用示例
import { akitaConfig } from '@datorama/akita'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; // 全局配置优先级最高,需放在应用引导逻辑之前 akitaConfig({ resettable: true }); // 执行应用引导 platformBrowserDynamic() .bootstrapModule(AppModule) .catch(err => console.error(err));
Standalone独立组件模式应用示例
import { akitaConfig } from '@datorama/akita'; import { bootstrapApplication } from '@angular/platform-browser'; import { AppComponent } from './app/app.component'; akitaConfig({ resettable: true }); bootstrapApplication(AppComponent);
配置完成后,所有后续创建的Store默认都会继承resettable: true的全局配置,不需要再逐个给Store添加配置项。
内容的提问来源于stack exchange,提问作者Eric R
相关产品推荐
相关产品推荐

