&& ||

在js的三元表达式还有对象里有这样一个现象

  • pass
<div :class="fieldsRequired.emptyEmail?'reminderFalse':'reminderTrue'">邮箱不可为空</div>
<div :class="(!fieldsRequired.emptyEmail || fieldsRequired.email)?'reminderFalse':'reminderTrue'">邮箱不符合邮箱规则</div>
        
  • fail
<div :class="fieldsRequired.emptyEmail?'reminderFalse':'reminderTrue'">邮箱不可为空</div>
<div :class="(!fieldsRequired.emptyEmail && fieldsRequired.email)?'reminderFalse':'reminderTrue'">邮箱不符合邮箱规则</div>
        

JS

  • pass

const fieldsRequired = computed(() => {
      if (validTag.value) {
        return {
          firstName: !!accountFields.value.firstName.trim(),
          emptyEmail:!!accountFields.value.email.trim(),
          email: /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(accountFields.value.email),
          confirmEmail: (accountFields.value.email === accountFields.value.confirmEmail),
          supplier: !!accountFields.value.supplier.trim()
        };
      } else {
        return {
          firstName: true,
          emptyEmail:true,
          email: true,
          confirmEmail: true,
          supplier: true
        };
      }

    });
	
	或者

对象里给 || 做判断是可以的
但是用 && 逻辑就是不对的
posted @ 2024-05-09 10:36  茫茫人间刺骨凉  阅读(31)  评论(0)    收藏  举报