【问题标题】:Cannot add property "X", object is not extensible angular 9无法添加属性“X”,对象不可扩展角度 9
【发布时间】:2020-06-23 03:27:50
【问题描述】:

在从 Angular 8 更新到 Angular 9 几天后,我在很多地方都遇到了这个问题。 之前它工作正常。

谁能帮我解决问题。下面的示例代码

list.reduce((acc, curr) => {
        const obj = {};
        obj['x'] = curr['Y'];
});

【问题讨论】:

  • 你有答案了吗?

标签: javascript angular typescript angular9


【解决方案1】:

我在这里参考 Ngrx 版本 8 到 9 的更改列表和迁移指南

https://ngrx.io/guide/migration/v9

我发现 Angular 9 有一个与不变性相关的特殊变化。他们在那里定义了与动作、状态和可序列化性相关的不变性逻辑。我在这里尝试了他们建议的解决 Ngrx V9 更新问题的方法

https://ngrx.io/guide/store/configuration/runtime-checks

@ngrx/store 附带五 (5) 个内置运行时检查。尝试禁用所有检查

【讨论】:

    【解决方案2】:

    如果您在 Angular 中使用 NgRx 后遇到此错误。尝试实现下面的代码,它将在全球范围内有所帮助。 否则您可以利用对象或数组的深度克隆来消除问题。

    @NgModule({
      imports: [
      StoreModule.forRoot(reducers, {
        runtimeChecks: {
          strictStateImmutability: false,
          strictActionImmutability: false,
        },
      }),
     ],
    })
    export class AppModule {}
    

    【讨论】:

    • 您不希望您的商店是不可变的吗?
    猜你喜欢
    • 2020-07-08
    • 1970-01-01
    • 2019-08-29
    • 2021-02-02
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 2020-06-07
    相关资源
    最近更新 更多