【LWC】Lightning标准/自定义编辑表单组件中,<lightning-messages> 标签显示错误信息的两种方法 show error messages in lwc edit-form

<lightning-messages></lightning-messages>标签显示错误信息的两种用法

标签介绍

<lightning-messages></lightning-messages>是组件 lightning-record-edit-form自带的标签,它用统一的ui提示用户错误消息(error messages)。

用法

字段级别的验证规则错误信息显示

在自定义字段中,我们可以设置验证规则,并且为验证规则设定错误信息,让它在未通过验证时显示在<lightning-messages></lightning-messages>位置上。

建立验证规则

  • 进入对象管理器里自定义对象/标准对象的页面
  • 选择验证规则选项
  • 新建一个验证规则
  • 输入规则名(建议起一个能概括你的验证规则的名字)
  • 在错误条件公式中输入公式,该公式为 时,触发错误,阻止记录新建/更新
  • 在错误消息中输入自定义错误消息,并且错误位置选择页首。

效果

在这里插入图片描述

在建立验证规则之后,不管是标准的lightning新建、编辑记录表格还是自定义组件中的 lightning-record-edit-form,该验证规则若出现错误,错误消息都会显示在页首:

在Trigger中建立代码级别的验证规则

<lightning-messages></lightning-messages>本质上是lightning框架对标准data-service出现的错误的前端显示,因此,在Trigger中我们同样可以触发记录级别的错误并且显示在页面组件上。在代码级别,我们能更加灵活,但同时也会带来代码量。

例子

我们针对某一个对象,建立一个触发器。

trigger Battleship on Battle_Station__c (before insert,before update) {
    
    
    if (Trigger.isBefore) {
    
    
        for (Battle_Station__c bs : Trigger.new) {
    
    
            if (bs.Name.contains('RF')) {
    
    
                bs.addError('记录名中含有“RF”,无法保存');
            }
        }
    }
}

当记录中的Name字段含有某些字符时,阻止更新,并且报错。

需要注意的是,在Trigger中在记录或者字段上添加 addError()方法,会阻止记录各种操作(新建、更新等等)的发生。

效果

在这里插入图片描述

总结

上述两种方法就是在lightning标准、自定义表单页首显示错误消息的方法,特别需要注意的是,在自定义组件中,<lightning-record-edit-form>标签后,<lightning-input-field>前需要添加标准的 <lightning-messages>标签!

两种方法一种低代码,一种更多定制化选择,权衡你对记录的验证要求去选择吧!

猜你喜欢

转载自blog.csdn.net/qq_35714301/article/details/114273273
今日推荐