我有一个Angular 2.4.0应用程序,我正在使用一个有一些支持Javascript验证/格式化几个字段的表单.当字段格式化完成时,如果从格式返回的值与附加到模型的原始值匹配,则视图不会更新.有没有办法强制视图更新?由于没有模型更改,强制组件刷新没有任何影响.我猜我需要用jQuery之类的东西单独更新视图,但我想先检查是否有更好的解决方案.
组件: 导出类Component {field:string
formatField(updatedField: string) {
this.field = updatedField.replace(new Regexp("[^\\d]", "g"), ""); // remove everything except numbers
}
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<html>
<body>
<input type="text" [ngModel]="field" (ngModelChange)="formatField($event)">
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,如果模型为"1",那么我输入"1;['];["并formatField返回"1","1;['];["当我希望显示时"1"(即formatField调用的返回值),屏幕仍将显示.
编辑:修复ngModelUpdate为ngModelChange示例(拼写错误).在描述中添加了Angular 2版本.
我没有看到任何关于此的内容,但我想知道是否可以在单个 Karma 运行中包含多个 karma-conf.js 文件?基本上,我正在考虑为 CI 配置一个覆盖范围和 tslint 的配置,以及一个只对本地开发进行测试的配置。