[英]Ember.js 2.7 - How to check validation on an input field?
我對Ember.js還是很陌生,但是在對特定輸入字段進行驗證時遇到了麻煩。
這是我的模板index.hbs的代碼:
<div class="jumbotron text-center">
<h1>Coming Soon</h1>
<br/><br/>
<p>Don't miss our launch date, request an invitation now.</p>
<div class="form-horizontal form-group form-group-lg row">
<div class="col-xs-10 col-xs-offset-1 col-sm-6 col-sm-offset-1 col-md-5 col-md-offset-2">
{{input type="email" value=model.email class="form-control" placeholder="Please type your e-mail address." autofocus="autofocus"}}
</div>
<div class="col-xs-10 col-xs-offset-1 col-sm-offset-0 col-sm-4 col-md-3">
<button disabled={{isDisabled}} {{action 'saveInvitation' model}} class="btn btn-primary btn-lg btn-block">Request invitation</button>
</div>
</div>
{{#if responseMessage}}
<div class="alert alert-success">{{responseMessage}}</div>
{{/if}}
<br/><br/>
</div>
這是我的控制器index.js中的代碼:
import Ember from 'ember';
export default Ember.Controller.extend({
headerMessage: 'Coming soon',
responseMessage: '',
email: '',
isValid: Ember.computed.match('email', /^.+@.+\..+$/),
isDisabled: Ember.computed.not('isValid'),
});
我要驗證的輸入字段是一封電子郵件。 我知道如何通過將value =“”字段替換為value =“ email”來進行驗證,但是我想知道如何使用value = model.email進行驗證
這似乎是一個簡單的問題,但我在文檔中找不到有關此特定問題的任何信息。
當您使用input
幫助程序時,這將在您輸入文本字段時更新model.email
屬性。
1.您不需要在控制器中聲明email
屬性。
2. isValid
計算屬性相關鍵應為model.email
import Ember from 'ember';
export default Ember.Controller.extend({
headerMessage: 'Coming soon',
responseMessage: '',
isValid: Ember.computed.match('model.email', /^.+@.+\..+$/),
isDisabled: Ember.computed.not('isValid'),
});
您可以在saveInvitation
操作中檢查電子郵件的有效性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.