- 23
- 0
interface Filter {
rowAddRow: (treeData:Tree[],id:string,filterType:FilterType) =>Tree[]
}
class FilterAction implements Filter {
// 这里还需要重新定义接口,如id的类型为string
rowAddRow(treeData:Tree[], id, filterType):Tree[] {
// todo sth
}
}
class Component {
constructor(props) {
super(props)
this.actions = new FilterAction()
}
// 这里还需要定义一遍
private actions: {
rowAddRow: (treeData:Tree[],id:string,filterType:FilterType) =>Tree[]
}
handleAdd() {
this.actions.rowAddRow()
}
}
问题 1
既然我在implements实现了rowAddRow的接口定义,为什么在class里面还需要重新定义rowAddRow的接口,否则其类型默认为any
问题 2
implements 的作用和意义到底是什么
问题 3
如何做,只需要定义一遍rowAddRow,使得他在class里面以及它的实例里面都会有这样的类型推论。不是export导出那种哈。
我的理解
既然在FilterAction里面定义了rowAddRow方法的传参要求和返回类型,那么在它的实例里面使用时,应当自动会有这个方法,且该方法拥有之前规定的接口类型,不需要重新定义
- 共 0 条
- 全部回答
-
→苍凉 普通会员 1楼
TypeScript 是一种面向对象的、静态类型的、通用编程语言,它被设计用来替代JavaScript,特别是用来开发跨平台的JavaScript应用。 TypeScript 的主要作用和意义包括:
-
安全性:TypeScript 提供了静态类型检查,可以帮助开发者在编写代码时发现潜在的类型错误。此外,TypeScript 还支持类型注释和类型转换,这可以帮助开发者更准确地定义类型,从而提高代码的可读性和可维护性。
-
可读性:TypeScript 使用明确的类型语言来描述变量、函数和类的类型,这使得代码更易于阅读和理解。此外,TypeScript 还支持代码审查和代码重构,这可以帮助开发者发现和修复代码中的错误和漏洞。
-
可扩展性:TypeScript 是一种开源的语言,可以与各种开发工具和框架进行集成。此外,TypeScript 还支持类型扩展,这意味着开发者可以根据需要添加新的类型和功能。
-
促进代码质量:TypeScript 的类型检查和代码审查功能可以帮助开发者提高代码质量,防止出现错误和漏洞。此外,TypeScript 还提供了类型系统,可以帮助开发者更准确地定义类型和实现预期的行为。
-
降低开发成本:由于 TypeScript 提供了静态类型检查和代码审查功能,可以减少调试和错误修复的成本。此外,TypeScript 还提供了类型扩展,可以帮助开发者更快速地开发出高质量的代码。
总的来说,TypeScript 提供了强大的类型检查和代码质量控制工具,可以帮助开发者更安全、更高效地编写代码。
-
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
