【发布时间】:2015-07-07 14:14:51
【问题描述】:
我想知道是否可能,使用 Angular 一次性绑定,在模型更新后完全重新渲染视图/模板,也可以通过重新编译模板。 例如,在按下按钮时,可能是 react 的工作方式:我更新模型并明确强制更新视图。 基本上这是我想要实现的目标:
// controller
angular.module('app', []).controller('AppCtrl', function($scope) {
$scope.items = [
{id: 1},
{id: 2},
{id: 3}
];
$scope.addAndRefresh = function() {
$scope.items.push({id: 4});
// manually call render logic here???
};
});
<!-- HTML template -->
<div ng-repeat="item in ::items">
{{item.id}}
</div>
<button ng-click="addAndRefresh()">Add</button>
通过单击“添加”按钮,我想刷新视图以查看新添加的项目。
【问题讨论】:
-
为什么要完全重新渲染它,而不仅仅是依赖于修改数据的部分?
-
我同样的问题:我有兴趣了解如何,如果可能的话,手动重新渲染一次性绑定模板,无论数据如何。
-
恐怕 Stack Overflow 不是此类问题的论坛。在这里,您需要显示您尝试过的代码并解释您在做什么以及为什么这样做,以便人们可以帮助您。
-
Bizzarre:我一直认为 stackoverflow 是解决此类问题的正确位置。我有一个明显的问题(在我看来)我不知道如何处理。也许比我更聪明的人可以提供帮助!
-
@MatteoPiazza 检查我的回答,了解您的问题的几个解决方案。没有内置在 Angular 核心中,但在 Angular 2.0 之前,它可能与您所达到的一样接近。