TypeScript 错误“接口 'NodeBuffer' 错误地扩展了接口 'Uint8Array'”

Posted

技术标签:

【中文标题】TypeScript 错误“接口 \'NodeBuffer\' 错误地扩展了接口 \'Uint8Array\'”【英文标题】:TypeScript error "Interface 'NodeBuffer' incorrectly extends interface 'Uint8Array'"TypeScript 错误“接口 'NodeBuffer' 错误地扩展了接口 'Uint8Array'” 【发布时间】:2017-07-10 01:39:09 【问题描述】:

当我尝试编译我的 Angular 应用程序时,我收到了这个错误:

...\src\page-sidebar\typings\browser\ambient\node\index.d.ts 中的错误 (426,11):错误 TS2430:接口“NodeBuffer”错误地扩展了接口“Uint8Array”。 属性“填充”的类型不兼容。 类型 '(value: any, offset?: number, end?: number) => Buffer' 不可分配给类型 '(value: number, start?: number, end?: number) => this'。 类型“缓冲区”不可分配给类型“this”。

我的 TypeScript 和打字已更新到最新版本:

"typescript": "2.1.6",
"typings": "2.1.0

有谁知道问题出在哪里?

【问题讨论】:

处理此类错误的最佳方法是在线搜索错误文本。我做到了,并发现重新安装节点类型可能会有所帮助:garysieling.com/blog/…。否则,您可以在github.com/types/env-node/issues 记录错误。 为了检查是什么问题,我们需要查看 index.d.ts 的代码 【参考方案1】:

尝试更新 Node.js 的类型定义。运行typings i env~node -SG 为我工作。我在这里找到了解决方案https://github.com/typings/typings/issues/554

希望对你有帮助。

【讨论】:

完美答案!!

以上是关于TypeScript 错误“接口 'NodeBuffer' 错误地扩展了接口 'Uint8Array'”的主要内容,如果未能解决你的问题,请参考以下文章

使用 typescript-eslint 在 VSCode 编辑器中未显示 Typescript 错误

Nuxt TypeScript 错误:nuxt:typescript 找不到模块'@/my-module'

TypeScript 错误 2304:找不到名称 'div' - CRA TypeScript 模板

@typescript-eslint 编译错误不同于 linting 错误

React + Typescript:TypeScript 错误:类型“字符串”与类型“CSSProperties”没有共同的属性

将 React-Apollo 教程改编为 Typescript 时出现 Typescript 错误