Angular 15中ngx-mask无法输入以点开头数值的问题求助
问题解决:ngx-mask 无法直接输入前导小数点的问题
你的AppModule中通过providers: [ provideNgxMask() ]引入ngx-mask的操作是正确的,问题出在掩码配置上。
当前使用的mask="separator.4"属于千分位分隔数字掩码,它默认要求输入必须以整数部分开头,因此直接输入小数点时不会被识别显示,必须先输入整数(比如0)才能触发小数部分的渲染。
要实现直接输入.50的需求,可以调整掩码配置:
- 改用
decimal掩码,并配置允许前导小数点:<input type="text" [(ngModel)]="sharePrice" mask="decimal.4" [allowLeadingZeroes]="true" [allowNegativeNumbers]="false" [dropSpecialCharacters]="false"> - 若坚持使用
separator掩码,可在全局或组件级开启allowLeadingZeroes参数,不过更推荐用decimal掩码处理纯小数场景
如果需要全局统一配置,可在AppModule中调整provideNgxMask的参数:
providers: [ provideNgxMask({ allowLeadingZeroes: true, // 其他全局配置项 }) ]
内容的提问来源于stack exchange,提问作者Subhabrata Banerjee
相关产品推荐
相关产品推荐

