EntityDetailComponent
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:75
Tab 式实体详情组件:基础表单 Tab + 每个一对多/多对多关系一个表格 Tab;
create 模式先生成内存草稿实体,校验通过并保存时才落库;
edit 模式按 entityId(路由输入或 DIALOG_DATA)从 Repository 加载实例,保存时内部落库。
关系 Tab 内嵌的实体列表可继续打开子实体详情对话框(套娃),由 editChain 阻断环。
Constructors
Constructor
new EntityDetailComponent(): EntityDetailComponent;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:282
Returns
EntityDetailComponent
Properties
activeRelationName
readonly activeRelationName: Signal<string | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:216
当前活动关系 tab 的 relationName(用于子实体注册关系)
activeTab
readonly activeTab: Signal<DetailTab | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:237
activeTabKey
readonly activeTabKey: WritableSignal<string>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:232
creationChain
readonly creationChain: Signal<string[]>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:203
创建链路:当前实体 + 祖先链路,传递给子 entity-list 以阻断循环创建(祖先链路 input 优先,缺省回退 DIALOG_DATA)
creationChainInput
readonly creationChainInput: InputSignal<string[] | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:173
祖先创建链路(实体类型 namespace:name)的 input,用于阻断循环创建。
Remarks
绑定名是 creationChain,与 React / Vue 的同名 prop 对齐;同名类成员 creationChain
是追加了当前实体之后的有效链路(main 起就公开),所以 input 以别名声明。
delegateSave
readonly delegateSave: InputSignal<boolean | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:165
委托保存:不创建草稿实体,仅 emit formSubmitted 让调用方处理
dialogTitle
readonly dialogTitle: Signal<string>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:195
弹框标题
draftEntitySignal
readonly draftEntitySignal: WritableSignal<EntityInstance | null>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:187
暴露草稿实体给模板(关系 tab 的 entity-list 需要)
draftFormData
readonly draftFormData: WritableSignal<EntityFormData>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:184
当前表单编辑数据(create 模式下跟踪用户输入)
editChain
readonly editChain: Signal<string[]>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:213
已打开详情对话框的记录 id 栈(input 优先,缺省回退 DIALOG_DATA,含当前记录),关系 tab 列表据此阻断无限套娃
editChainInput
readonly editChainInput: InputSignal<string[] | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:159
已打开详情对话框的记录 id 栈(含当前记录)的 input。
Remarks
绑定名是 editChain,与 React / Vue 的同名 prop 对齐;同名类成员 editChain
是 input 与 DIALOG_DATA 合并后的有效值(main 起就公开),所以 input 以别名声明。
entityId
readonly entityId: InputSignal<string | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:141
fieldChanged
readonly fieldChanged: OutputEmitterRef<FormFieldChangeEvent>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:177
fixedFormData
readonly fixedFormData: InputSignal<EntityFormData | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:162
预填充的外键数据(不可编辑),用于级联新增场景
formCancelled
readonly formCancelled: OutputEmitterRef<void>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:176
formData
readonly formData: InputSignal<EntityFormData | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:149
formFields
readonly formFields: InputSignal<FormFieldConfig[] | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:148
formMode
readonly formMode: InputSignal<FormMode | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:150
formSubmitted
readonly formSubmitted: OutputEmitterRef<EntityFormData>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:175
isCreateMode
readonly isCreateMode: Signal<boolean>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:181
是否使用外部保存模式(create 模式下,保存/取消按钮在 tabs 下面,而非 form 内)
metadata
readonly metadata: InputSignal<
| Readonly<EntityMetadataType>
| undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:147
name
readonly name: InputSignal<string | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:140
namespace
readonly namespace: InputSignal<string | undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:139
parentEntityForRelation
readonly parentEntityForRelation: Signal<EntityInstance | null>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:190
父实体(草稿或已保存实例),用于关系 tab 的 entity-list
relatedEntityProvider
readonly relatedEntityProvider: InputSignal<
| RelatedEntityProvider
| undefined>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:151
tabGroupName
readonly tabGroupName: string;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:144
唯一的 radio group name,避免多个 EntityDetailComponent 实例之间的 radio 冲突
tabs
readonly tabs: Signal<DetailTab[]>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:221
validationErrors
readonly validationErrors: OutputEmitterRef<FormValidationResult>;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:178
Accessors
delegateSaveValue
Get Signature
get delegateSaveValue(): boolean;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:278
是否委托保存(input 优先,缺省回退 DIALOG_DATA)
Returns
boolean
fixedFormDataValue
Get Signature
get fixedFormDataValue(): EntityFormData | undefined;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:273
预填充外键数据(input 优先,缺省回退 DIALOG_DATA)
Returns
EntityFormData | undefined
formDataValue
Get Signature
get formDataValue(): EntityFormData;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:251
Returns
formFieldsValue
Get Signature
get formFieldsValue(): FormFieldConfig[];
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:244
Returns
formModeValue
Get Signature
get formModeValue(): FormMode;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:264
Returns
metadataValue
Get Signature
get metadataValue(): EntityMetadata;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:240
Returns
relatedEntityProviderValue
Get Signature
get relatedEntityProviderValue():
| RelatedEntityProvider
| undefined;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:268
Returns
| RelatedEntityProvider
| undefined
Methods
buildFixedFormData()
buildFixedFormData(tab): EntityFormData | undefined;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:405
Parameters
| Parameter | Type |
|---|---|
tab | DetailTableTab |
Returns
EntityFormData | undefined
buildFixedQuery()
buildFixedQuery(tab):
| {
combinator: "and";
rules: unknown[];
}
| undefined;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:390
Parameters
| Parameter | Type |
|---|---|
tab | DetailTableTab |
Returns
| {
combinator: "and";
rules: unknown[];
}
| undefined
onCancel()
onCancel(): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:386
Returns
void
onFieldChanged()
onFieldChanged(event): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:348
Parameters
| Parameter | Type |
|---|---|
event | FormFieldChangeEvent |
Returns
void
onFormCancelled()
onFormCancelled(): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:342
Returns
void
onFormDataChanged()
onFormDataChanged(data): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:315
Parameters
| Parameter | Type |
|---|---|
data | EntityFormData |
Returns
void
onFormSubmitted()
onFormSubmitted(data): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:319
Parameters
| Parameter | Type |
|---|---|
data | EntityFormData |
Returns
void
onSave()
onSave(): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:360
外部保存按钮(create 模式)
Returns
void
onValidationErrors()
onValidationErrors(result): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:355
Parameters
| Parameter | Type |
|---|---|
result | FormValidationResult |
Returns
void
selectTab()
selectTab(key): void;
Defined in: packages/rxdb-model-angular/src/entity-detail/entity-detail.ts:298
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
void