如何在 swagger @ApiProperty 类型中使用类型(打字稿类型)
How to use type (typescript type) in swagger @ApiProperty type
我遇到了问题。
我需要在 API 上的 @ApiProperty 中公开一个 'type'。
但是招摇不接受。我在很多网站上寻找解决方案,但我没有找到。
这是我得到的错误:
TS2693: 'testTest' only refers to a type, but is being used as a value
here.
type testTest = 'A' | 'B';
@ApiProperty({
type: testTest,
example: 'fr',
})
test: testTest;
我不能使用其他东西,因为我需要使用的类型来自外部库。
您不能在 Swagger 中使用 TypeScript type
作为 type
的值,因为 type
您从所述库导入的内容在运行时不可用,或者一旦它被转译为javascript。它仅用于类型检查。这就是打字稿的工作原理。这对于任何类型、接口、return 类型等都是相同的...
我建议你做的是让一个变量保存 type testTest = 'A' | 'B';
中的值
const testTest = ['A','B'];
@ApiProperty({
type: String,
example: testTest[0],
enum: testTest
})
test: testTest;
我遇到了问题。 我需要在 API 上的 @ApiProperty 中公开一个 'type'。 但是招摇不接受。我在很多网站上寻找解决方案,但我没有找到。
这是我得到的错误:
TS2693: 'testTest' only refers to a type, but is being used as a value here.
type testTest = 'A' | 'B';
@ApiProperty({
type: testTest,
example: 'fr',
})
test: testTest;
我不能使用其他东西,因为我需要使用的类型来自外部库。
您不能在 Swagger 中使用 TypeScript type
作为 type
的值,因为 type
您从所述库导入的内容在运行时不可用,或者一旦它被转译为javascript。它仅用于类型检查。这就是打字稿的工作原理。这对于任何类型、接口、return 类型等都是相同的...
我建议你做的是让一个变量保存 type testTest = 'A' | 'B';
const testTest = ['A','B'];
@ApiProperty({
type: String,
example: testTest[0],
enum: testTest
})
test: testTest;