在一个路由中传递数据到另一个路由
在一个路由中传递数据到另一个路由
它必须能够在路由控制器之间传递数据。例如,在一个路由中有一个输入字段,其内容将在下一个路由中显示。我不希望使用$rootScope
。
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.name = "John Doe";
});
姓名:
您输入的内容为:{{name}}
问题的原因是需要将数据从一个路由传递到另一个路由,但还没有找到解决方法。
解决方法是使用AngularJS的服务来处理会话存储。首先,需要创建一个名为"storageService"的服务,该服务包含了用于获取和保存数据的方法。然后,在控制器中使用该服务来保存和获取会话数据。
下面是代码示例:
app.factory('storageService', ['$rootScope', function($rootScope) { return { get: function(key) { return sessionStorage.getItem(key); }, save: function(key, data) { sessionStorage.setItem(key, data); } }; }]); app.controller('myCtrl',['storageService',function(storageService) { // 保存会话数据到storageService storageService.save('key', 'value'); // 从storageService获取保存的会话数据 var sessionData = storageService.get('key'); }]);
以上代码创建了一个名为"storageService"的服务,该服务包含了两个方法:get和save。get方法用于获取会话数据,save方法用于保存会话数据。在控制器中,通过调用storageService的save方法将数据保存到会话中,并通过调用storageService的get方法从会话中获取保存的数据。
这样就可以在不同的路由中共享和传递数据了。