[英]Typescript constructor shorthand when parameters are passed as an object
我知道当我们以传统方式传递参数时,我们可以简化构造函数,例如
class Foo {
private name: string;
private age: number;
constructor(name: string, age: number) {
this.name = name;
this.age= age;
}
}
所以这个 class 的等效简写构造函数符号将是
class Foo {
constructor(private name: string, private age: number) {}
}
同样,当构造函数参数作为如下对象传入时,我该如何做同样的速记。
class Foo {
private name: string;
private age: number;
private group: string;
constructor({
name,
age,
group,
}: {
name: string;
age: number;
group: string;
}) {
this.name= name;
this.age= age;
this.group= group;
}
}
你可以这样做:
class Foo {
constructor(public obj : { name: string, age: number, group: string}) {
}
}
let foo = new Foo({name: 'name', age: 42, group: 'answers'});
alert(foo.obj.name);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.