当前位置:  开发笔记 > 编程语言 > 正文

仅在$ touch为true时显示的角度ng-messages

如何解决《仅在$touch为true时显示的角度ng-messages》经验,为你挑选了1个好方法。

我没有做任何太特别的事情.

我有一个输入,我希望每次击键都有效.如果验证失败,则显示错误.不要等待模糊事件触发$ touch.

我认为这是默认情况,但显然不是.我使用角度材料和角度消息.我正在为封锁检测这样做.

标记:

Please enter a Login ID.
Caps Lock is ON!
{{ primaryLogin | json }}

当我第一次来到页面,打开大写锁定,并开始输入,我的错误消息如下所示:

{
  "$error": {
    "capslock": [
      {
        "$viewValue": "Q",
        "$validators": {},
        "$asyncValidators": {},
        "$parsers": [
          null
        ],
        "$formatters": [
          null,
          null
        ],
        "$viewChangeListeners": [],
        "$untouched": false,
        "$touched": true,
        "$pristine": false,
        "$dirty": true,
        "$valid": false,
        "$invalid": true,
        "$error": {
          "capslock": true
        },
        "$name": "login",
        "$options": {
          "debounce": 100,
          "updateOnDefault": true
        }
      }
    ]
  },
  "$name": "primaryLogin",
  "$dirty": true,
  "$pristine": false,
  "$valid": false,
  "$invalid": true,
  "$submitted": false,
  "login": {
    "$viewValue": "Q",
    "$validators": {},
    "$asyncValidators": {},
    "$parsers": [
      null
    ],
    "$formatters": [
      null,
      null
    ],
    "$viewChangeListeners": [],
    "$untouched": true,
    "$touched": false,
    "$pristine": false,
    "$dirty": true,
    "$valid": false,
    "$invalid": true,
    "$error": {
      "capslock": true
    },
    "$name": "login",
    "$options": {
      "debounce": 100,
      "updateOnDefault": true
    }
  }
}

所以这似乎按预期工作,但实际错误消息不会显示,直到模糊事件触发该特定输入..所以我可以使用大写,输入10个字符,错误对象说封锁错误是有的,但由于$触及不是真的,那么它没有表现出来.

一旦$ touch设置为true,那么我可以回到输入中,一切都按预期工作.

有任何想法吗?提前致谢!



1> Devner..:

更改

你也可以试试

要么

您也可以像这样对他们进行有条件的检查:

或有条件的OR检查:

尝试上述逐一找出符合您案例的人.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有