angularjs – 一次绑定:更新模型并重新渲染视图
发布时间:2020-12-17 08:00:36 所属栏目:安全 来源:网络整理
导读:我想知道是否可能,使用角度一次性绑定,在模型更新后完全重新渲染视图/模板,也可以通过重新编译模板. 例如,在按下按钮时,可能在反应方式中工作:我更新模型并明确强制更新视图. 基本上这就是我想要实现的目标: // controllerangular.module('app',[]).contro
我想知道是否可能,使用角度一次性绑定,在模型更新后完全重新渲染视图/模板,也可以通过重新编译模板.
例如,在按下按钮时,可能在反应方式中工作:我更新模型并明确强制更新视图. 基本上这就是我想要实现的目标: // 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> 通过单击“添加”按钮,我想刷新视图以查看新添加的项目.
我试图找出一些方法来优雅地做到这一点.我希望框架内置一些内容来刷新一次性绑定.我想出的就是使用ngIf删除我想要刷新的元素并将其添加回去.
这是一个演示.单击“添加项目”按钮,您将看到列表未刷新对重复的一次性绑定.检查刷新值并再次单击,项目将更新: var app = angular.module('demo',[]); app.controller('RefreshCtrl',function($scope,$timeout) { var counter = 4; $scope.visible = true; $scope.items = ['Item1','Item2','Item3']; $scope.addItem = function() { if ($scope.refresh) { $scope.visible = false; } $scope.items.push('Item' + counter); counter++; $timeout(function() { $scope.visible = true; }); }; }); <script src="https://code.angularjs.org/1.3.17/angular.js"></script> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <div ng-app="demo" ng-controller="RefreshCtrl" class="container"> <button class="btn btn-default" ng-click="addItem()">Add Item</button> <input type="checkbox" ng-model="refresh" />Refresh Values <div ng-if="visible"> <h3 ng-repeat="item in ::items">{{item}}</h3> </div> <p>Items Array: {{items}}</p> </div> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularjs – Angular Stripe – 将条带支付表格转换为条纹
- for循环、while循环、break跳出循环、continue结束本次循环
- 如何在vim下使用外部PDF阅读器在光标下打开pdf文件(使用’g
- scala – 如何在Play 2.0中实现特定日期的预定工作?
- angularjs – angular.bootstrap启动后unbootstrap?
- linux – 对于memcached实例,Docker容器有什么好处?
- bootstrap中的thumbnails
- 角度 – Dragula:恢复ng2-dragula的下降
- Bootstrap-select多选下拉框实现
- shell – 如何在Jenkins中以root身份运行脚本?