1
ファクトリ関数からエクスポートされた型はどのようにインポートしますか?フロータイプ:ファクトリ関数からクラスをエクスポートする
Person.js
// @flow
export default function personFactory(): Person {
class Person {
name: string;
constructor(name: string) {
this.name = name;
}
}
return Person;
}
従業員:これは私が例えば何をしたいです(ずっと...注意、これはangularJS工場に適用されますので、我々はそれが働いている方法を変更することはできません)。 js
// @flow
// This won't work since the default export is the factory function
// but bare with me.
import type PersonType from './Person';
employeeFactory.$inject = ['Person'];
export default function employeeFactory(Person: PersonType): Employee {
class Employee extends Person {
job: string;
constructor(name: string, job: string) {
super(name);
this.job = job;
}
}
return Employee;
}
ここで、型宣言を複製しなくても、ファクトリ関数でクラスをエクスポートする方法はありますか?
解決策は、私がしなければならないと思ったものです。注釈を2度宣言するのは苦痛です。依存関係が工場に注入されるため、クラスを工場外に移動することはできません。答えをありがとう! – Steel