首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在typescript下使用kafka-node?

如何在typescript下使用kafka-node?
EN

Stack Overflow用户
提问于 2020-06-14 19:05:20
回答 2查看 1.8K关注 0票数 4

我需要在typescript下使用kafka-node:

代码语言:javascript
运行
复制
const kafkaHost = 'localhost:9092';
const client = new Client({ kafkaHost });

在启动index.ts之后,我得到了这个错误:

代码语言:javascript
运行
复制
 Property '_write' in type 'ProducerStream' is not assignable to the same property in base type 'Writable'.
  Type '(message: ProduceRequest, encoding: "utf8" | "buffer", cb: (error: any, data: any) => any) => void' is not assignable to type '(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null | undefined) => void) => void'.
    Types of parameters 'encoding' and 'encoding' are incompatible.
      Type 'BufferEncoding' is not assignable to type '"utf8" | "buffer"'.
        Type '"ascii"' is not assignable to type '"utf8" | "buffer"'.

143   _write (message: ProduceRequest, encoding: 'buffer' | 'utf8', cb: (error: any, data: any) => any): void;

我认为问题出在类型上,所以我没有安装@types/kafka-node,但是它被弃用了。

如何修复它?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-17 21:29:42

kafka-node现在为Typescript提供了自己的预定义类型。你可以从here推荐他们

关于您的问题,在使用之前,您需要导入正确的类型:

代码语言:javascript
运行
复制
import { KafkaClient as Client } from 'kafka-node';

const kafkaHost = 'localhost:9092';
const client = new Client({ kafkaHost });
票数 1
EN

Stack Overflow用户

发布于 2021-02-12 03:49:23

这是kafka-node中的一个报告错误,目前还没有官方解决方案。到目前为止,最好的答案是……不要让typescript检查kafka-node的源代码。

向tsconfig.json添加"skipLibCheck": true

查看此处:https://github.com/SOHU-Co/kafka-node/issues/1412

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62371643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档