typescript - TypeScript:无法在子类上调用超级方法
问题描述
当我尝试覆盖父方法并在内部使用 super 时,出现此错误:
错误 TS2340:只能通过“super”关键字访问基类的公共和受保护方法。
return super.toJson(["password", ...blacklist]);
这是一个例子:
abstract class BaseUser {
name: string;
constructor(name: string) {
this.name = name;
}
toJson = () => {
return Object.assign({}, this);
}
}
class MyUser {
...
toJson = (blacklist) => {
...
const obj = super.toJson();
...
}
}
不知道我做错了什么...
解决方案
正如@Titian Cernicova-Dragomir 在评论中所说,您应该改用方法。您可以检查以下答案:
推荐阅读
- linux - Linux LS 命令不能与 * 正则表达式量词一起正常工作
- python - 在视频流的帧中找到闭合角度的坐标
- mysql - MySQL 8 不检测选择不同查询中的功能依赖关系
- google-maps - 我有以下代码,它说无法解析符号 mMap()。我该怎么办?
- sql - 加入 ( {} ) 2 个单独工作的查询会产生值错误
- javascript - 为大量简单形状设置动画
- android-studio - Gradle 同步失败:找不到方法实现()
- java - java中的多态行为
- python - 如何将单词列表与字典项匹配并返回python中的键?
- spring - 错误以 java.lang.ClassNotFoundException: Spring boot 中的 org.apache.tools.ant.Project 出现