【发布时间】:2017-08-22 20:32:24
【问题描述】:
以下 Angular 2(4.3.5 版)代码无法按预期工作。
<link
rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css"
integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ"
crossorigin="anonymous">
<script
src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"
integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn"
crossorigin="anonymous">
</script>
<form style="margin:50px;">
<div class="form-control">
<label for="firstName">First Name</label>
<input
ngControl="firstName"
id="firstName"
#firstName
type='text'
class='form-control'
required>
<div
class="alert alert-danger"
*ngIf="!firstName.valid && firstName.touched">
A first name is required
</div>
</div>
<br/>
<button class="btn btn-primary" type="submit">
Submit!
</button>
</form>
当ngIf 语句是
*ngIf="!firstName.valid"
错误消息div 在页面加载时显示,在输入文本后仍然可见。
当ngIf声明如上时
*ngIf="!firstName.valid && firstName.touched"
错误信息未显示。
我错过了什么? 谢谢 A.G.
【问题讨论】:
-
您导入的是“FormsModule”,而不是“ReactiveFormsModule”,对吗?尝试将 ngControl 替换为 [(ngModel)] 并添加名称属性。
标签: angular validation