我有一个控制器“AController”,它有一个模板变量 $scope.tpl.partialtemplate1 = 'initialcontactlist.html'。
'AController' 基本上负责整个页面,'mainpage.html',我们有
<div ng-include="tpl.partialtemplate1"></div>
在“mainpage.html”上,有一个添加联系人的表单。此表单不是“partialtemplate1”视图的一部分。
提交表单后,我希望将“partialtemplate1”的 HTML 视图重置为初始页面加载时的状态,因为它将重新加载最新的联系人列表。
我尝试过在成功添加每个新联系人后增加一个变量,然后监视该变量并更改部分模板变量。
例如,在“AController”中:
$scope.tpl = {};
$scope.contactcount = 0;
$scope.contactsignupdata = new Contact();
$scope.tpl.partialtemplate1 = 'initialcontactlist.html';
$scope.successmessage = null;
$scope.addcontact = function() {
$scope.contactsignupdata.$save();
$scope.successmessage = 'Saved!';
$scope.contactsignupdata = new Contact();
$scope.contactcount = $scope.contactcount + 1;
};
$scope.$watch('contactcount', function(newValue, oldValue) {
$scope.$apply(function() {
$scope.tpl.partialtemplate1 = null;
$scope.tpl.partialtemplate1 = 'initialcontactlist.html';
});
/*$scope.partialtemplate1 = 'projecttasklists.html';*/
});
为什么部分模板变量没有改变?是的,每次都会成功保存联系人 - 我在 Rails 工厂处理了这个问题......