我在控制器中有一个提交功能,我需要保留在表单中输入的数据,以便在网页的另一页显示(我使用的是ui-router)。
任何人都可以给我一个提示,告诉我该怎么做?如何从控制器传递数据 - 不知道什么,不知道怎么做 - 我可以在我的网页的另一页中使用数据?
我是否必须将控制器中的数据作为参数传递给路径文件?如果是这样,我该怎么办?
请注意,在解释时我对Angularjs很陌生。
谢谢!
这里是控制器,如果它有帮助:
(function () {
"use strict";
angular.module('public')
.controller('RegistrationController', RegistrationController);
RegistrationController.$inject = ['checkDishService','$scope','$stateParams','$http'];
function RegistrationController(checkDishService, $scope, $stateParams,$http) {
var reg = this;
reg.submit = function () {
/*//The form data:
$scope.reg.user.firstname,
$scope.reg.user.lastname,
$scope.reg.user.email,
$scope.reg.user.phone,
$scope.reg.user.dish*/
};//end of submit
}
})();
答案 0 :(得分:0)
我个人使用常用服务通过我的应用程序保存数据。在您的服务中,您可以创建许多属性:user,form1,form2。然后,您可以通过注入公共服务来获取数据。
Angularjs中的服务:https://docs.angularjs.org/guide/services
答案 1 :(得分:0)
您可以使用工厂/服务来保存表单的临时数据。您可以使用这样的getter和setter创建工厂:
angular.module('app').factory('tempStorageService',function(){
var data={};
return{
setData:function(tempData){
data=tempData;
},
getData:function(){
return data;
}
}
})
或者您可以使用$rootScope
将值添加到全局范围,并在任何控制器中访问这些值