首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TypeORM Postgres流没有输出任何内容

TypeORM Postgres流没有输出任何内容
EN

Stack Overflow用户
提问于 2022-07-13 20:08:39
回答 1查看 217关注 0票数 1

我使用的是TypeORM=^0.2.45和pg-query=^4.2.3,但我似乎无法从流中获得任何输出:

代码语言:javascript
复制
const stream = await conn
      .getRepository(Entity)
      .createQueryBuilder("e")
      .stream();
stream.on("data", (x) => {
  console.log(123);
})
stream.on("result", (x) => {
  console.log(1234);
})

我怎样才能让一条小溪工作呢?没有输出什么都没有。如果我做一个简单的getMany而不是流,至少我得到了一些东西。流甚至不执行任何东西;没有一个日志。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-16 04:40:37

开始起作用了。必须深入了解源代码,然后发现您实际上需要使用pg流查询包:

代码语言:javascript
复制
import { stringify } from "JSONStream";

function mapSync(sync) {
  return through(function write(data) {
    let mappedData;
    try {
      mappedData = sync(data);
    } catch (e) {
      return this.emit("error", e);
    }
    if (mappedData !== undefined) {
      this.emit("data", mappedData);
    }
  });
}


const stream = await conn
      .getRepository(Entity)
      .createQueryBuilder("e")
      .stream();
stream.pipe(stringify()).pipe(mapSync((data) => {
    
    data = JSON.parse(x.substring(x.indexOf("{")));
    return data;
}));

mapSync来自另一个pg查询流令人难以置信地依赖的库。

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

https://stackoverflow.com/questions/72972055

复制
相关文章

相似问题

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