我尝试在HTML中创建变量,但是ngInit不会刷新它。 这是代码:
<div class="table-days" data-ng-repeat="day in currentWeek">
<div class="table-responsive day-table-margin one-day-row">
<table class="table table-striped table-bordered table-hover day-table-row">
<tbody data-ng-init="menu = (order | menuDinnersId : kid : day)">
<tr data-custom-href="/selectMenu/{{day.getDate()}}/{{day.getMonth() + 1}}/{{day.getFullYear()}}/{{kid}}">
<td class="col-md-4 menu-table-row">
{{(dinners | filter : {id : menu.first} : true)[0].name}}
</td>
<td class="col-md-4 menu-table-row">
{{(dinners | filter : {id : menu.second} : true)[0].name}}
</td>
<td class="col-md-4 menu-table-row row-with-button">
{{(dinners | filter : {id : menu.extra} : true)[0].name}}
<button type="button" class="btn btn-danger btn-circle show-additional btn-day-remove"
data-ng-if="menu != undefined"
data-ng-click="$event.stopPropagation(); openModal(kid, menu)">
<i class="glyphicon glyphicon-remove" aria-hidden="true"></i>
</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
我需要$scope.menu
leter(如你所见)。你知道怎么做吗?我希望我的帖子很清楚。
修改
我有这条线:
<tbody data-ng-init="menu = (order | menuDinnersId : kid : day)">
我正在使用menu
leter,例如。这里:
<td class="col-md-4 menu-table-row">
{{(dinners | filter : {id : menu.first} : true)[0].name}}
</td>
但是,当我更改order
变量菜单时,不会更新。我完全明白它不应该,但我正在寻找替代方案。所以问题是:如何创建可刷新的菜单变量。它可以在控制器中,但我也不知道我该怎么做。正如您所看到的,我在很多地方使用menu
所以我不会反复重新评估它。我想在每次循环迭代中执行一次。