Ниже, если я импортирую Entity
, я получаю сообщение об ошибке в теме сообщения (TypeError: Прототип объекта может быть только Object или null: undefined), но если я заменяю импорт фактическим объявлением Entity
, код работает нормально.
Демонстрация Stackblitz здесь .
Это Customer.ts
в форме, которая выдает ошибку, когда я запускаю код с ts-node
:
index.ts
export { Customer } from "./Customer";
export { Entity } from "./Entity";
Customer.ts
import { Entity } from "./index";
export class Customer extends Entity {
sku: string;
constructor(po: any) {
super();
this.sku = po.sku;
}
}
Entity.ts
export abstract class Entity {
id?: string;
}
Run.ts (тестовый код)
import {Customer} from "./";
let c = new Customer({
name: "Bob"
});
console.log(c);
Если я заменим импорт Entity
на объявление, подобное этому:
export abstract class Entity {
id?: string;
}
export class Customer extends Entity {
sku: string;
constructor(po: any) {
super();
this.sku = po.sku;
}
}
Затем Run.ts
регистрирует это:
Customer { sku: undefined }
Другими словами, он работает нормально и не выдает ошибок. Мысли?