TS中的字典类型如下:
{
[key: string]: string;
}
但是,在用猫鼬声明我自己的模式时,它失败了。
const users = new Schema({
[key: string]: String,
});
我也尝试过:
const users = new Schema({
[String]: String,
});
但也不起作用。感谢帮助
编辑:我只希望users
是一个对象,其键为string
,其值为string
。而且对象不能为空
答案 0 :(得分:0)
您不能将类型作为参数传递给函数或初始化程序。您可以将其分配给变量,然后像这样传递变量:
interface MySchema {
[key: string]: string
}
let data: MySchema = {
v1: 'abc',
v2: '123'
}
const users = new Schema(data);
如果Schema
是泛型,则可以这样使用菱形运算符:
interface MySchema {
[key: string]: string
}
const users = new Schema<MySchema>({
v1: 'abc',
v2: '123'
});