下面的问题有简单的解决办法吗?
我想将对象 B 转换为对象 A。
感谢您的解决方案。
export interface A {
a: string;
}
export interface B extends A {
b: string;
}
const b: B = {
a: 'test1',
b: 'test2'
};
console.log(b); //output: {a:'test1', b:'test2'}
console.log(b as A); //output: {a:'test1', b:'test2'}, but i want {a:'test1'}
接口只是一个编译时构造,以确保类型安全。您可以创建类似的数据{'f': 'foo'} as any as A
尽管您的数据与界面根本不匹配,但它仍然完全有效。
要“转换”它,您需要手动创建一个新对象:const a = {a: b.a}
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)