javascript - angularjs本地存储无法正常工作?

标签 javascript angularjs local-storage

我使用本地存储。当我第一次进入该页面时,我得到了一个旧的本地存储值。当我刷新时,我得到当前值。我怎样才能避免这个错误?每次我只需要当前的本地存储值。我已将其与此代码一起封装起来。我还没有安装ngstorage。有人可以告诉我是否需要安装 ngstorage ?

.controller('SignInCtrl', [
         '$scope','$http' ,'$location','$window', 
        function($scope,$http, $location,$window) {
		
    $scope.signin = function() 
			{ 
			 
			$http.post('***', userdetails).success(function(data,response) 
				{
				var nameResponse = JSON.stringify(data.Name);	
				window.localStorage.setItem("name",nameResponse);
					
							
				})
				
			
				
            }

 }])
 
 .controller('MyprofileCtrl', [
         '$scope','$http' ,'$location','$window', 
        function($scope,$http, $location,$window) {
		
		var name=$window.localStorage.getItem("name");
	//console.log(name);
	if(name == null)
	{
		
		$scope.loginstatus ="Sign Up With Us";
		console.log($scope.loginstatus);
	}else
	{
		$scope.loginstatus ='Welcome '+ name.replace(/\"/g, "");
		console.log($scope.loginstatus);
	}
		
    
 }])
 

最佳答案

是的,你是对的,你必须使用 ngstorage 模块。

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title></title>
	<link rel="stylesheet" href="">
	<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/ngStorage/0.3.7/ngStorage.min.js"></script>
</head>
<body ng-app="myModule">
	<div ng-controller="myCtrl">
        <button ng-click="save()">Save</button>
        <button ng-click="load()">Load</button>
        <input type="text" ng-model="txt">
        {{myData}}
    </div>
</body>
<script>
    var myModule = angular.module("myModule", ["ngStorage"]);
    myModule.controller("myCtrl", function($scope, $localStorage) {
        $scope.txt = "prabhu";
        $scope.save = function() {
        	alert($scope.txt)
            $localStorage.message = $scope.txt;
        }

        $scope.load = function() {
            $scope.myData = $localStorage.message;
        }
    });
</script>
</html>

关于javascript - angularjs本地存储无法正常工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31801662/

相关文章:

javascript - 这些字符在 Javascript 中做什么

javascript - Angularjs - 扩展 ngModel

angularjs - 在 AngularJS 应用程序中使用 node_modules

angularjs - 如何设置 Gruntfile/Yeoman 以构建以功能为中心的目录结构

javascript - HTML localStorage 返回 Null

ios - 快速保存到本地存储

javascript - 减去两次得到 javascript 中的总分钟数(非标准时间格式)

javascript - 如何在 ngx-openlayers 中加载自定义 .pbf 文件

javascript - 使用 readline 在 javascript 中进行一系列用户输入,其中相应的问题存储在数组中

json - Flutter:如何将用户创建的对象存储在本地存储中并将它们检索到 ListView 中