Javascript 使用TypeScript扩展breeze实体
我正在开发一个网站使用热毛巾和打字脚本。在John Papa出色的PluralSight课程中,他通过创建构造函数并使用“Object.defineProperty”对breezejs实体进行了扩展。例如,他添加了一个名为Javascript 使用TypeScript扩展breeze实体,javascript,typescript,breeze,hottowel,Javascript,Typescript,Breeze,Hottowel,我正在开发一个网站使用热毛巾和打字脚本。在John Papa出色的PluralSight课程中,他通过创建构造函数并使用“Object.defineProperty”对breezejs实体进行了扩展。例如,他添加了一个名为fullName的属性,如下所示 注意:元数据存储是breezejs元数据存储 function registerPerson(metadataStore) { metadataStore.registerEntityTypeCtor('Person', Per
fullName
的属性,如下所示
注意:元数据存储是breezejs元数据存储
function registerPerson(metadataStore) {
metadataStore.registerEntityTypeCtor('Person', Person);
function Person() {
this.isPartial = false;
this.isSpeaker = false;
}
Object.defineProperty(Person.prototype, 'fullName', {
get: function () {
var fn = this.firstName;
var ln = this.lastName;
return ln ? fn + ' ' + ln : fn;
}
});
}
我的问题是如何使用TypeScript实现同样的功能?TypeScript支持现成的访问器。您询问的TypeScript代码可能是:
function registerPerson(metadataStore) {
metadataStore.registerEntityTypeCtor('Person', Person);
}
class Person {
public firstName: string;
public lastName: string;
constructor(public isPartial=false, public isSpeaker=false) {
}
get fullName():string {
return `${this.firstName} ${this.lastName}`;
}
}