答案 0 :(得分:2)
错误消息指出:您需要直接从类中的接口实现属性。 在这种情况下,这意味着:
class Handler implements Isize, Iposition {
public width: number;
public height: number;
public x: number;
public y: number
constructor(x, y) {
this.width = 300;
this.height = 450;
this.x = x;
this.y = y;
}
}
答案 1 :(得分:1)
因此,如果您不想更改类实现,并且可以更改接口,则可以使用以下方法:
interface Isize {
size: {
width: number;
height: number;
};
}
interface Iposition {
position: {
x: number;
y: number;
}
}
class Handler implements Isize, Iposition {
position: { x: number; y: number; };
size: { width: number; height: number; };
}
答案 2 :(得分:0)
您已在Handler上实现了2个接口,但尚未在类中创建接口属性。如果您需要将字段设为可选,则可以这样做。 (只需在键后加问号即可。)
interface Isize {
width? : number;
height? : number;
}
在以下情况下,您不会收到错误消息。
class Handler implements Isize, Iposition {
public x;
public y;
public height;
public width:;
.......
........
.........
}