小编Chr*_*rem的帖子

使用 subQuery 键入 leftJoinAndSelect

我这里有一个很大的问题。我有三张桌子:

@Entity()
Vessel {
  @OneToMany()
  workOrders: WorkOrder[];
}

@Entity()
WorkOrder {
  @ManyToOne()
  vessel: Vessel;

  @OneToOne()
  order: Order;
}

@Entity()
Order {
  @OneToOne()
  workOrder: WorkOrder

  @Column()
  paid: Boolean
}
Run Code Online (Sandbox Code Playgroud)

我需要进行一个查询,以获取所有船只及其工作订单及其订单。仅当其订单已付款时才应选择工作订单: false。因此,如果容器没有 order.paid = false 的 workOrders,则仍应选择它,但有一个空的 workOrders 数组。

数据看起来像这样:

vessels: [
  {
    id: 123,
    workOrders: [] // or null, or not selected, doesn't really matter
  },
  {
    id: 1234,
    workOrders: [
        {
          id: 99,
          order: {
            id: 12345,
            paid: false
          }
        },
        {
          id: 88,
          order: {
            id: 321,
            paid: false …
Run Code Online (Sandbox Code Playgroud)

sql sql-server node.js express typeorm

8
推荐指数
0
解决办法
2389
查看次数

NestJS Jest 找不到具有绝对路径的模块

我有一个相当新的 NestJS 应用程序。我正在尝试运行单元测试,但是在使用绝对路径(“src/users/...”)时由于“找不到模块...”而一直失败,但在使用相对路径(“./users/ ..”)。我这里的配置有什么问题吗?

package.json 中的 Jest 设置:

"jest": {
  "moduleFileExtensions": [
    "js",
    "json",
    "ts"
  ],
  "rootDir": "src",
  "testRegex": ".spec.ts$",
  "transform": {
    "^.+\\.(t|j)s$": "ts-jest"
  },
  "coverageDirectory": "../coverage",
  "testEnvironment": "node"
}
Run Code Online (Sandbox Code Playgroud)

tsconfig.json:

{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": true,
    "removeComments": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "target": "es2017",
    "sourceMap": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "incremental": true
  }
}
Run Code Online (Sandbox Code Playgroud)

node.js jestjs nestjs ts-jest

5
推荐指数
5
解决办法
3159
查看次数

Jest 单元测试 - SyntaxError:不能在模块外使用导入语句

我正在尝试使用 Jest 在 Vue 中设置单元测试。但是,我收到此错误:

? Test suite failed to run
...
SyntaxError: Cannot use import statement outside a module

 >1 | import editUser from '@/components/forms/editUser.vue';
    | ^
  2 | import TestComponent from '@/pages/user/UserMyProfile.vue';
  3 | import { shallowMount } from '@vue/test-utils';
  4 | import { expect } from 'chai';
  5 | import 'jest';
Run Code Online (Sandbox Code Playgroud)

我的 Jest 配置package.json如下所示:

"jest": {
    "moduleFileExtensions": [
        "js",
        "ts",
        "json",
        "vue"
    ],
    "transform": {
        ".*\\.(vue)$": "vue-jest",
        "^.+\\.tsx?$": "ts-jest"
    },
    "testURL": "http://localhost/",
    "moduleNameMapper": {
        "^@/(.*)$": …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing vue.js jestjs

2
推荐指数
1
解决办法
4049
查看次数