angular - 如何让弹出窗口仅从我从编辑按钮加载的表单中加载?
问题描述
我正在尝试放置一个弹出窗口,在其中写入在表单中所做的更改,此弹出窗口仅在我单击加载编辑表单的编辑按钮时才会出现,因为“Nueva Actividad”按钮会加载 resgitre 表单它有一些会更新的元素,所以如果我使用表单类型进行操作,弹出窗口也会出现在注册表单中 我怎样才能让弹出窗口仅从我从编辑按钮加载的表单中加载?
按钮“Guardar”代码
handleSave = () => {
ValidateFormFields(this.form);
if (!this.form.valid) {
return;
}
const { id, formType } = this.store.selectSnapshot(CONTAINER_STATE_TOKEN);
const fechaEvento = this.form.get('fechaEvento').value.format("M")
const fecha = new Date();
const mesActual = fecha.getMonth() + 1;
const hoy = fecha.getDate();
if (fechaEvento > mesActual) {
if (hoy > 15) {
console.log("puedess regitrar")
ValidateFormFields(this.form);
if (!this.form.valid) {
return;
}
this.alertService.confirm(MESSAGES.CONFIRM_GUARDAR_GENERAL).subscribe(result => {
if (result.confirm) {
const { session } = this.store.selectSnapshot(APP_STATE_TOKEN);
const { value: formValue } = this.form;
const horaEvento = moment(formValue.fechaEvento.format(CONSTANTS.DATE_FORMAT) + ' ' + formValue.horaEvento, `${CONSTANTS.DATE_FORMAT} hh:mm a`);
const data = {
...formValue,
idLinea: session.session.lineaid,
idSolicitante: session.session.personid,
idUsuarioRegistra: session.session.userid,
idTipoSolicitud: TipoSolicitudEnum.ACTIVIDAD,
horaEvento
};
const { id, formType } = this.store.selectSnapshot(CONTAINER_STATE_TOKEN);
if (formType == FormType.EDITAR) {
this.store.dispatch(new ContainerActions.ActualizarFormulario({
id,
data
})).subscribe(() => {
this.toastService.success(MESSAGES.GUARDAR_SOLICITUD_DATOS_GENERALES_SUCCESS);
});
} else {
this.store.dispatch(new ContainerActions.GuardarFormulario({ data })).subscribe(() => {
this.toastService.success(MESSAGES.GUARDAR_SOLICITUD_DATOS_GENERALES_SUCCESS);
const { id } = this.store.selectSnapshot(CONTAINER_STATE_TOKEN);
this.location.go(ROUTES_URL.SOLICITUDES.EDITAR(id));
});
}
}
});
}
表格 HTML
<ng-container *ngIf="state$ | async as state">
<app-page-title-bar [text]="state.title"></app-page-title-bar>
<app-form-buscar-solicitud></app-form-buscar-solicitud>
<div class="m-t-10 m-b-10">Resultados de la búsqueda</div>
<ng-container *ngTemplateOutlet="tplButtons; context: {$implicit: state.loading}"></ng-container>
<lib-grid
[loading]="state.loading"
[source]="state.gridSource"
[definition]="state.gridDefinition">
<ng-template libTemplate="tipo-actividad">
{{TipoSolicitudDescripcionEnum.ACTIVIDAD}}
</ng-template>
<ng-template
libTemplate="tpl-opciones"
let-data>
<button
matTooltip="Editar Actividad"
class="mini-icon-button"
mat-icon-button
color="primary"
(click)="handleClickEdit(data)">
<mat-icon>edit</mat-icon>
</button>
<button
matTooltip="Eliminar Actividad"
class="mini-icon-button"
mat-icon-button
color="primary"
(click)="handleClickDelete(data)">
<mat-icon>delete</mat-icon>
</button>
</ng-template>
</lib-grid>
</ng-container>
<ng-template
#tplButtons
let-loading>
<div>
<button
class="m-r-5"
color="primary"
mat-flat-button
(click)="handleClickNuevo()"
[disabled]="loading">
<mat-icon>add</mat-icon>
Nueva Actividad
</button>
</div>
</ng-template>
解决方案
推荐阅读
- javascript - 如何访问数组内的对象数组?
- database-design - 删除 cassandra 主键索引
- angular - 如何使用代理设置部署 Angular 应用程序
- mongodb - 在使用 Docker compose 创建的 Mongodb 容器上使用 root 凭据登录
- swift - 如何在 Swift 中读取 ANSI Escape 代码响应值?
- redis - 基于 Elo 的多人配对
- python - 如何阅读熊猫上的下载 sql 查询
- python - 在 PySpark 数据框中拆分字符串
- angular - 模糊指令后修剪:angular2-trim-directive,即使只有一个字母也会抛出错误
- solr - Solr 嵌套文档:查询由父字段过滤的子文档