<md-input-container>
<input mdInput placeholder="email" [formControl]="emailFormControl">
<md-error *ngIf="emailFormControl.errors.required">This field is required</md-error>
<md-error *ngIf="emailFormControl.errors.pattern">
Please enter a valid email address
</md-error>
</md-input-container>
onSelect(phrase) {
this.selectedPhrase = phrase;
}
<div *ngIf="selectedPhrase">
<h2>The Phrase</h2>
Language: {{selectedPhrase.language}} <br>
Value: {{selectedPhrase.value}}
</div>
Instead, use componentDidUpdate or a setState callback (setState(updater, callback)),Т.е. вам надо сделать
this.setState({
b: val
}, this.doCalc);
Если в рендере вызывать, то ошибки валятся(так можно не записывать сумму в state, зачем она вам там? Это же дублирование данных.
То результат каким должен быть?