确认弹层

    你不必在模块或组件级别提供 ConfirmationService,它已经在级别提供,你可以在你的组件,指令或服务直接注入并使用它.

    你可以使用 ConfirmationServicesuccess, warn, errorinfo 方法显示一个确认弹层.

    1. const confirmationStatus$ = this.confirmation.success('Message', 'Title');
    • ConfirmationService 方法接收三个参数,分别是 message, title, 和 options.
    • success, warn, error, 和 info 方法返回一个RxJS Subject监听确认弹层关闭事件. 事件值类型是 枚举.

    如何监听关闭事件

    你可以订阅确认弹层关闭事件,例:

    1. import { Confirmation, ConfirmationService } from '@abp/ng.theme.shared';
    2. constructor(private confirmation: ConfirmationService) {}
    3. this.confirmation
    4. .warn('::WillBeDeleted', { key: '::AreYouSure', defaultValue: 'Are you sure?' })
    5. .subscribe((status: Confirmation.Status) => {
    6. });
    • messagetitle 参数接收字符串,本地化Key或本地化对象. 参阅
    • Confirmation.Status 是一个枚举,具有三个属性;
      • 是一个关闭事件值,当通过确认按钮关闭弹出窗口时触发此事件.
      • Confirmation.Status.reject 是一个关闭事件值,当通过取消按钮关闭弹出窗口时触发此事件.
      • Confirmation.Status.dismiss 是一个关闭事件值,当通过按Escape键关闭弹出窗口时触发此事件.
    1. this.confirmation.error('You are not authorized.', 'Error');

    如何显示具有给定选项的确认弹层

    选项可以作为第三个参数传递给success, warn, error, 和 info 方法:

    • hideCancelBtn 选项为 true 时隐藏取消按钮. 默认值为 false.
    • hideYesBtn 选项为 true 时隐藏确认按钮. 默认值为 false.
    • dismissible选项允许通过按Escape键或单击背景来取消确认弹出窗口. 默认值为 true.
    • cancelText 是取消按钮的文本,可以传递本地化键或本地化对象. 默认值为 AbpUi::Cancel.
    • yesText 是确定按钮的文本,可以传递本地化键或本地化对象. 默认值为 AbpUi::Yes.
    • messageLocalizationParams是用于消息本地化的插值参数.
    • titleLocalizationParams 是标题本地化的插值参数.

    使用以上选项确认弹层窗口如下所示:

    1. const options: Partial<Confirmation.Options> = {
    2. yesText: '<i class="fa fa-trash mr-1"></i>Yes, delete it',
    3. };
    4. this.confirmation.warn(
    5. `
    6. <br>
    7. Do you confirm that?
    8. '<span class="my-custom-title">Are you sure?</span>',
    9. options,
    10. );

    由于这些值现在是HTML,因此应该手动处理本地化. 参阅LocalizationService了解如何实现.

    打开的确认弹出窗口可以通过 clear 方法手动删除:

    1. this.confirmation.clear();

    success

    1. success(
    2. message: Config.LocalizationParam,
    3. title: Config.LocalizationParam,
    4. options?: Partial<Confirmation.Options>,
    5. ): Observable<Confirmation.Status>

    warn

    1. error(
    2. message: Config.LocalizationParam,
    3. title: Config.LocalizationParam,
    4. options?: Partial<Confirmation.Options>,
    5. ): Observable<Confirmation.Status>

    info

    1. info(
    2. message: Config.LocalizationParam,
    3. title: Config.LocalizationParam,
    4. options?: Partial<Confirmation.Options>,
    5. ): Observable<Confirmation.Status>

    clear

    1. clear(
    2. status: Confirmation.Status = Confirmation.Status.dismiss
    3. ): void
    • status 参数是确认关闭事件的值.