在应用程序中,我使用编辑字段来显示和修改聪(示例:0.00000004
)。
此字段通过 [(ngModel)]
链接到数据模型。 。
数据类型是数字。
Angular(或者更确切地说 javascript 或 html)在加载时系统地将其翻译为科学记数法:(例如: 4e-8
)
使用“text
”或“number
”的字段类型会产生相同的效果。
是否有一种奇特的方法可以强制使用不科学的表示法将字段绑定(bind)到数据模型并且不更改数据模型?
问题的简单 javascript 示例:
const elText = document.getElementById("satoshiText");
const elNumber = document.getElementById("satoshiNumber");
elText.value =0.00000001;
elNumber.value =0.00000001;
<input id="satoshiText" type="text" /><br /><br />
<input id="satoshiNumber" type="number" />
最佳答案
如果单独指定值和事件绑定(bind)而不是使用双向绑定(bind),则可以添加管道来格式化数字:
<input [ngModel]="value | number:'1.8-8'" (ngModelChange)="value = $event">
如果您经常需要这样做,您还可以编写一个自定义表单组件,将其 ControlValueAccessor
转换为所需的格式。
关于javascript - Angular - 避免在 [(ngModel)] 数字输入字段中使用科学记数法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65552888/