Я действительно разрабатываю упрощенное приложение с использованием метеоритов, и я сталкиваюсь с проблемой.Meteor и #each scoping
На самом деле, я м, имеющий шаблон с заявлением #each как следующее:
<template name="insidePlanning">
<div class="row m-t">
<div class="backGrey col-md-8">
<div class="row">
{{#each users}}
<div class="col-md-{{countUsersCol}}">
{{name}}
</div>
{{/each}}
</div>
</div>
<div class=" col-md-4">
<form>
<div class="form-group">
<input type="text" name="text" placeholder="Type to add new tasks" class="form-control" />
</div>
</form>
<ul class="list-unstyled">
{{#each taskNotAffected}}
<li>{{title}}</li>
{{/each}}
</ul>
</div>
</div>
</template>
Все работает отлично освобожденный в {{countUsersCol}} ...
Вот мой шаблон помощник:
Template.insidePlanning.helpers({
countUsersCol:function(){
if(this.users){
return Math.round(12/this.users.length);
}
return 0;
}
});
В самом деле, когда я ставлю {{countUsersCol}} внутри утверждения #each, я всегда получаю 0. Если я ставлю его прямо над #each, он отображает 6 (значение, которое я на самом деле пе ред.). Итак, в заключение, #each создает другую область внутри своего оператора ...
Я попытался использовать {{../countUsersCol}}, но ничего не происходит, и я не знаю, что делать на самом деле.
Не могли бы вы мне немного помочь?
Я пробовал и не работает. Дело в том, что у меня есть желаемый результат вне поля #each. Когда я console.log (это) внутри моей функции, у меня есть свой дочерний элемент, и я не могу получить доступ к родительской функции. – mfrachet
Возможно, вы можете использовать 'Template.instance(). Data'? – corvid