У меня есть простая функция, которая возвращает мне значение как число. Это значение в основном, сколько предметов в тодолисте является неполным.
testFunction() {
var a = 0;
this.todos.forEach(function(elem, i) {
if(elem.status === true) {
a += 1;
}
})
console.log(a); // gives correct length
}
Теперь у меня есть
Total todo Items Left <span>{{a}}</span> //Nothing coming here?
Как зарегистрировать значение a
в шаблоне
Угловое может привязывать данные к шаблону только с использованием собственных полей данных компонента. Таким образом, ваш код должен быть следующим.
testFunction() {
this.a = 0;
this.todos.forEach(function(elem, i) {
if(elem.status === true) {
this.a += 1;
}
}.bind(this))
console.log(a); // gives correct length
}
UPD Если вы хотите использовать синтаксис ES6, вам даже не нужно связывать this
вы можете просто использовать функцию стрелки, которая передает this
из родительской области:
testFunction() {
this.a = 0;
this.todos.forEach((elem, i) => {
if(elem.status === true) {
this.a += 1;
}
})
console.log(a); // gives correct length
}