相关疑难解决方法(0)

无法分配给对象'[object Object]'的只读属性'name'

以下代码仅针对name属性引发错误.可以通过name在属性中将属性指定为可写来修复它,Object.create我试图理解为什么会发生这种情况(并且可能有更优雅的方法来修复它).

var BaseClass = function (data) {
  Object.assign(this, data);
}

var ExtendedClass = function () {
  BaseClass.apply(this, arguments);
}

ExtendedClass.prototype = Object.create(BaseClass);

console.log(new ExtendedClass({ type: 'foo' }));
new ExtendedClass({ name: 'foo' });
Run Code Online (Sandbox Code Playgroud)

javascript oop

9
推荐指数
4
解决办法
2万
查看次数

类型错误:无法分配给打字稿中对象“[object Array]”的只读属性“0”

我正在研究 angular 8。

  1. 我有一个显示表格的页面。该表显示来自对象数组的数据,taskList组件以@Input().
  2. 我对这个表的列有一个排序功能。
  3. 我在每一行上也有一个删除选项。当我单击删除选项时,它会调用 api 来删除行,然后再调用一次来获取tasklist数组。这是相同的效果
  @Effect()
  DeleteTask$: Observable<Action> = this.actions$.pipe(
    ofType(importActions.DELETE_TASK),
    switchMap(params =>
      this.globalService
        .deleteTask(params)
        .mergeMap(deleteSuccess => {
          return from([
            new importActions.DeleteTaskSuccess(deleteSuccess),
            new importActions.LoadTaskList(),
          ]);
        })
        .catch((error, caught) => {
          return Observable.of(new GlobalError(error));
        }),
    ),
  );
Run Code Online (Sandbox Code Playgroud)

我的问题是当我在第一页加载时排序功能工作正常。但是,如果我删除一行然后在删除后获取任务列表,则会出现以下错误:

ERROR Error: Uncaught (in promise): TypeError: Cannot assign to read only property '0' of object '[object Array]'
TypeError: Cannot assign to read only property '0' of object '[object Array]'
Run Code Online (Sandbox Code Playgroud)

根据错误消息,我的代码中的以下函数给出了错误

ERROR Error: Uncaught (in …
Run Code Online (Sandbox Code Playgroud)

javascript typescript ngrx angular

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

javascript ×2

angular ×1

ngrx ×1

oop ×1

typescript ×1