2016-12-22 3 views
0

Я довольно новичок в Ember.js, и у меня возникают проблемы с проведением проверки в определенном поле ввода.Ember.js 2.7 - Как проверить правильность ввода в поле ввода?

Вот код для моего шаблона 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', /^[email protected]+\..+$/), 
    isDisabled: Ember.computed.not('isValid'), 
}); 

поле ввода, что я хочу получить подтверждение для электронной почты. Я знаю, как выполнить проверку, заменив поле value = "" на просто значение = "email", но я хочу знать, как я могу это сделать, используя значение = model.email

Это похоже на легкий проблема, но я ничего не могу найти в документах по этой конкретной проблеме.

ответ

2

Как вы используете 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', /^[email protected]+\..+$/), 
    isDisabled: Ember.computed.not('isValid'), 
}); 
0

Вы можете проверить достоверность электронного сообщения внутри объекта saveInvitation.

Смежные вопросы