首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在mdAutocomplete和md输入容器中使用md自定义验证器.(材料2)

在mdAutocomplete和md输入容器中使用md自定义验证器.(材料2)
EN

Stack Overflow用户
提问于 2017-08-01 12:58:52
回答 1查看 902关注 0票数 1

我试图使用md-error标记在mdAutocomplete上显示错误消息。我使用的角度与材料2组件。md-error消息为内置验证器(如required )显示。但是,我还想在md-error中显示另一条No Matching Records are found错误消息(基本上是当用户键入下拉列表中没有的内容时)。因此,我尝试使用另一个带有md-error*ngIf,但是这个错误消息从未显示过。我在谷歌上搜索过,看起来解决方案是有一个定制的验证方法或指令。Matter2提供了一种具有自定义验证方法的方法,但我无法在我的template based form中使用它。有人能给我提供一个使用md-error在基于模板的表单上使用自定义验证的示例吗?

样本代码:

这是行不通的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<md-input-container>
  <input mdInput
         placeholder="Currency Type"
         [(ngModel)]="policyObj.cost.premium.currencyType.name"
         [mdAutocomplete]="premiumCurrencyTypeAuto"
         [disabled]="disable"
         (keydown)="PanelOptions($event, policyObj.cost.premium.currencyType, filteredPremiumCurrencyType, premiumCurrencyTypeAuto)"
         (ngModelChange)="filteredPremiumCurrencyType = filterCurrency(policyObj.cost.premium.currencyType.name)"
         name="currency_type1" required>
     <md-error>This field is required</md-error>
     <md-error *ngIf="filteredPremiumCurrencyType?.length === 0"> No Matching
        Records Found!</md-error>
</md-input-container>

<md-autocomplete #premiumCurrencyTypeAuto="mdAutocomplete" [displayWith]="displayFn">
  <md-option *ngFor="let ct of filteredPremiumCurrencyType" [value]="ct">
    {{ ct.name }}
  </md-option>
</md-autocomplete>

我试着查看材料2-自定义误差匹配器,但不确定如何在基于模板的表单中使用它。任何帮助都将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-01 14:22:33

errorStateMatcher应该与模板和反应性表单一样工作。像这样的东西应该适用于您的用例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<md-input-container>
  <input mdInput [errorStateMatcher]="myErrorStateMatcher.bind(this)" ... >
  <md-error *ngIf="policyObj.cost.premium.currencyType.name === ''">This field is required</md-error>
  <md-error *ngIf="filteredPremiumCurrencyType?.length === 0" No Matching Records Found!</md-error>
</md-input-container>


function myErrorStateMatcher(control, form): boolean {
  if (this.filteredPremiumCurrencyType && !this.filteredPremiumCurrencyType.length) {
    return true;
  }

  // Error when invalid control is touched, or submitted
  const isSubmitted = form && form.submitted;
  return !!(control.invalid && (control.touched || isSubmitted)));
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45447613

复制
相关文章
使用casbin完成验证授权.md
上一篇讲了搭建一个身份认证系统,可以看到借助dex搭建一个安全可靠的身份认证系统并不是太难。本篇再讲一下用casbin完成验证授权。
jeremyxu
2019/08/12
2.1K0
巧用OpenSSL完成md2、md4、md5、rmd160、sha、sha1等的验证
版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢
耕耘实录
2018/12/20
1.2K0
Excle2MD
天天markdown写文章, 弄个表格,一行行的敲 , 效率太低,找到了一个fanfeilong大神写的工具,真是解放生产力啊
小小工匠
2021/08/17
4360
MD5加密与验证
  与 0xff进行&运算 是为了用8字节的byte类型获取一个32字节的int类型数
JQ实验室
2022/02/09
5370
使用LaTex语法在MD编辑器内编辑公式
编辑公式这个任务一直也没有什么好的办法,目前也是,因为LaTex的环境在Ubuntu里面。懒得打开了,就用MD写了。
云深无际
2021/12/02
1.1K0
使用LaTex语法在MD编辑器内编辑公式
开发编辑器进阶使用.md
俗话说:工欲善其事,必先利其器,作为一名开发必需要要一个得心应手的开发工具,比如下面的:
全栈工程师修炼指南
2022/09/28
2K0
开发编辑器进阶使用.md
在vue中解析md文档并显示
【说明:】markdown-loader、html- loader是为了让vue能够解析md格式的文件,读取出来,然后使用marked将读取出来的数据转换成html格式渲染到页面上。使用marked是为了使用更方便。
前端小tips
2021/11/30
6.3K0
在vue中解析md文档并显示
rabbitMQ结合spring-boot使用(2).md
这一章节我们会学习rabbitMQ在项目生产中一些重要的特性,如持久化,消息确认机制,消息过期等特性。只要能利用好这些特性,我们就能开发出可用性强的,功能强大的MQ系统。
六个核弹
2022/12/23
3750
MD使用方法
数字后面的点只能是英文的点,特别注意,有序列表的序号是根据第一行列表的数字顺序来的
LeviMaster
2021/06/16
5890
AngularJS 的输入验证机制:内置验证器、自定义验证器和显示验证信息
AngularJS 是一款流行的前端JavaScript框架,提供了强大的表单处理功能。其中一个关键特性是输入验证,即对用户输入进行验证以确保数据的有效性和完整性。本文将详细介绍 AngularJS 的输入验证机制,包括内置验证器、自定义验证器和显示验证信息等内容。
网络技术联盟站
2023/07/05
2830
MD5Init-MD5Update-MD5Final
MD5Update是MD5的主计算过程,inbuf是要变换的字节串,inputlen是长度,这个函数由getMD5ofStr调用,调用之前需要调用md5init
一见
2018/08/07
1.1K0
MD5算法在JavaScript中的实现
阅读更多 MD5算法在JavaScript中的实现 http://forum.cdmcs.com/viewtopic.php?t=117 /* to convert strings to a lis
阿敏总司令
2019/02/28
1.7K0
java使用md5_Java_MD5的使用「建议收藏」
3 importjava.nio.charset.Charset;4 importjava.security.MessageDigest;5
全栈程序员站长
2022/09/08
3950
创新在ThoughtWorks | MD脑洞
当我们说鼓励和孵化创新的时候,其实是说如何用创新持续性地产生社会和商业价值。ThoughtWorker从来都不缺乏新鲜的想法,却少有把想法实现的成功案例,而在那些被实现的案例里面,产生影响力和创造出实际价值的就更加稀少。我一直希望通过反思过去,找到通往未来的道路。
ThoughtWorks
2018/08/20
5520
创新在ThoughtWorks | MD脑洞
Kotlin初级(2)- - - 空安全.md
如果可空变量为null时,返回null 这种用法大量用于链式操作,能有效避免空指针异常
Hankkin
2018/09/30
6820
中英双语-桌球小游戏(2).md
桌球小游戏是 BigBear 老师设计、撰写的中英双语的 Cocos Creator 入门教程,面向 Cocos Creator 初学者,但不论你技术如何,相信你会在 BigBear 老师的文章中有所收获。
张晓衡
2019/09/11
8680
中英双语-桌球小游戏(2).md
github的ReadMe.md中如何使用图片
1.上传到项目下 上传到项目下,然后记录下需要图片的地址 2.ReadMe.md中引用 类似如下,加上链接即可 #### 4.关于 欢迎一起完善本项目(提issue或者加微信),如果有任何疑问,请
IT云清
2020/01/13
1.1K0
github的ReadMe.md中如何使用图片
Python中MD5加密
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)。
py3study
2020/01/02
2.9K0
md5加密介绍以及php中md5的漏洞
密码散列函数是一种单向散列函数,它可以将给定的数据提取出信息摘要,也就是给定数据的指纹信息。结果的摘要信息格式是一致的,通常用一个短的随机字母和数字组成的字符串来代表。
宣言言言
2019/12/19
1.9K0
点击加载更多

相似问题

角质材料2 md.输入-容器不工作

59

用于md菜单的md覆盖容器在角2材料中不对齐。

10

如何验证md-选择在角度材料2?

13

角材料md-数据报警器和md-选择验证

11

在角材料2中使用材料图标和md图标。

35
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文