[英]Creating named parameter to base class in typescript and javascript
我创建了一个基本模型类,其中包含传入数据的模型,出于某些外部原因,我将在类内部对数据进行建模。 尽管我遇到了将传入数据定义到此模型类中的问题。 这是我的课
export class EntityBasic {
constructor(
public id: string,
public title: string,
public urn?: string,
public risk_level?: string,
public be_aware?: string,
public body?: string,
public published_at?: string,
public created_at?: string,
public updated_at?: string,
public description?: string,
public notes?: string,
) {}}
}
我如何在另一个页面中定义其中的内容:
public getEntity(setEntity) {
return new EntityBasic(
setEntity.id,
setEntity.title,
setEntity?.urn,
setEntity?.risk_level,
setEntity?.be_aware,
setEntity?.body,
setEntity?.published_at,
setEntity?.created_at,
setEntity?.updated_at,
setEntity?.report?.summary || '',
setEntity?.report?.metadata?.source_notes,
setEntity?.report?.metadata?.notes,
);
}
但是像这样定义数据给我带来了问题,因为有时不会有骨灰盒或 risk_level 例如,数据会在类中混乱。
我想要一种这样定义的方法(这不起作用):
public getEntity(setEntity) {
return new EntityBasic(
id = setEntity.id,
title = setEntity.title,
urn = setEntity?.urn,
risk_level = setEntity?.risk_level,
)
}
我相信将所有参数包装到一个对象中是最好的解决方案。
interface EntityBasicParameters {
id: string;
title: string;
urn?: string;
risk_level?: string;
be_aware?: string;
body?: string;
published_at?: string;
created_at?: string;
updated_at?: string;
description?: string;
notes?: string;
}
export class EntityBasic {
constructor(params: EntityBasicParameters) {}}
}
public getEntity(setEntity) {
return new EntityBasic({
id: setEntity.id,
title: setEntity.title,
urn: setEntity?.urn,
risk_level: setEntity?.risk_level,
})
}
要不就
public getEntity(setEntity) {
return new EntityBasic(setEntity)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.