我对打字稿有疑问: 我的界面如下:
interface MyInterface {
option1?: string;
option2?: string;
// more options
}
在另一个文件中,我将实例化它的一个实例:
const defaultVar: MyInterface {
option1: 'defaultValue1',
option2: 'defaultValue2'
}
是否可以将默认值分配给另一个变量,并为某些选项设置详细信息?我什至不确定这种表示法。可能是:
const specificVar: MyInterface = defaultVar {
option2: 'specificValue'
}
我想定义一堆常量,这些常量都来自一个通用默认值,并且仅采用必要的值。
谢谢, 本杰明
答案 0 :(得分:2)
您可以使用对象spread operator:
interface MyInterface {
option1?: string;
option2?: string;
// more options
}
const defaultVar: MyInterface = {
option1: 'defaultValue1',
option2: 'defaultValue2'
}
const specificVar: MyInterface = {
...defaultVar,
option2: 'specificValue'
}
上面的代码创建一个新对象,并将defaultVar
的所有属性分配给specificVar
。我们还可以添加其他属性来覆盖新对象中的属性。