假设您具有ng-model
要在 partial1 中捕获的所有字段的属性,如下所示。
部分-1
<input type='text' ng-model='pageData.field1' />
<input type='text' ng-model='pageData.field2' />
<input type='text' ng-model='pageData.field3' />
应用程序.js
var myApp = angular.module('app', ['ngStorage']);
myApp.controller('Ctrl1', function($scope, $localStorage){
$scope.pageData = {};
$scope.handleClick = function(){
$localStorage.prevPageData = $scope.pageData;
};
});
myApp.controller('Ctrl2', function($scope, $localStorage){
$scope.pageData = $localStorage.prevPageData;
});
Part-2
<p>{{pageData.field1}}</p>
<p>{{pageData.field2}}</p>
<p>{{pageData.field3}}</p>
另一种方法:
但是,如果您只想将数据从 page1 中的一个控制器发送到 page2 中的另一个控制器,您也可以使用服务来实现。
myApp.service('dataService',function(){
var cache;
this.saveData = function(data){
cache = data;
};
this.retrieveData = function(){
return cache;
};
});
在您的第一个控制器中注入此服务以保存页面数据,并在您的第二个控制器中再次注入它以检索保存的页面数据。
myApp.controller('Ctrl1', function($scope, dataService){
dataService.saveData($scope.pageData);
});
myApp.controller('Ctrl2', function($scope, dataService){
$scope.pageData = dataService.retrieveData();
});