我试图在应用程序的结帐过程中在页面之间传递数据,但它没有按照应有的方式工作.我做了一些阅读,大多数人建议使用服务,但唯一的问题是当页面刷新(用户点击刷新或稍后返回)时,服务中的所有数据都会消失.这是有道理的,因为服务中的数据并不是持久的,而是导致问题.
所以问题是:如何在angularJS中的页面之间传递数据,并保持页面刷新后传递的数据?
这是我的代码到目前为止(我尝试使用查询字符串):
.service('checkoutService',
function checkoutService($location, Address, $routeParams, TicketGroup) {
var ticket_quantity = 0;
var ticket_group = {};
var selected_address = {};
this.loadInformation = function() {
if(!ticket_quantity && $routeParams.ticket_quantity)
ticket_quantity = $routeParams.ticket_quantity;
if(!ticket_group && $routeParams.ticket_group_id)
ticket_group = TicketGroup.get({id: $routeParams.ticket_group_id});
if(!selected_address && $routeParams.address_id)
selected_address = Address.get({id: $routeParams.address_id});
}
this.setTicketQuantity = function(quantity) {
ticket_quantity = quantity;
$location.path().search({ticket_quantity: quantity});
}
this.getTicketQuantity = function() {
return ticket_quantity;
}
this.setTicketGroup = function(object) {
ticket_group = object;
$routeParams.ticket_group = object.id;
}
this.getTicketGroup = function() {
return …Run Code Online (Sandbox Code Playgroud) 如何在角度js中将数据从一个页面传递到另一个页面?我听说过使用某些东西作为服务,但我不知道如何使用它!以下是我想要执行的功能!在第1页:
<div class="container" ng-controller="mycontrl">
<label for="singleSelect"> Select Date </label><br>
<select nAMe="singleSelect" ng-model="dateSelect">
<option value="2/01/2015">2nd Jan</option>
<option value="3/01/2015">3rd Jan</option>
</select>
<br>
Selected date = {{dateSelect}}
<br/><br/><br/>
<label for="singleSelect"> Select time </label><br>
<select nAMe="singleSelect" ng-model="timeSelect">
<option value="9/10">9AM-10AM</option>
<option value="10/11">10AM-11AM</option>
<option value="11/12">11AM-12PM</option>
<option value="12/13">12PM-1PM</option>
<option value="13/14">1PM-2PM</option>
</select>
<button ng-click="check()">Check!</button>
<br>
Selected Time = {{timeSelect}}
<br/><br/>
Run Code Online (Sandbox Code Playgroud)
用户选择时间和日期,用于调用db,结果存储在变量数组中!第1页控制器:
var config= {
params: {
time: times,
date:dates
}
};
$http.get('/era',config).success(function(response) {
console.log("I got the data I requested");
$scope.therapist_list = response;
});
Run Code Online (Sandbox Code Playgroud)
现在我如何将这个$scope.therapist_list数组变量发送到下一页,该变量将具有不同的控制器,如果使用服务,如何在我的application.js文件中定义它
application.js中:
var …Run Code Online (Sandbox Code Playgroud)