我正在尝试使用Angular反应形式。
此刻,我在服务-defaultService中初始化表单值。查看所有示例,我只能看到在Component中设置了表单默认值。
它们可以在使用中初始化吗?
LoginComponent.ts:
@Injectable
export class LoginComponent {
constructor() {
}
public onNginit() {
this.allFields = defaultService.loginSettings();
}
}
DefaultService.ts
class BaseFields {
columnName: string;
tempName: string;
visible: boolean;
// blah
// blah
}
class BasePrice extends BaseFields {
displayDp: number;
constructor(baseFields: BaseFields) {
super();
}
}
@Injectable
export class DefaultService {
loginSettings: [BaseFields, BasePrice];
accountActivated: boolean;
accountLocked: boolean;
retriesRemaining: number;
constructor() {
this.loginSettings = [
{
columnName: 'Quantity';
tempName: 'Qty';
visible: true;
},
{
columnName: 'Reco Retail';
tempName: 'RRP';
visible: true;
displayDp: 2;
}
]
}
}
说实话,我认为可以更好地使用和定义类型来改进DefaultService。