用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果


Posted in Javascript onNovember 09, 2016

研究了一上午,终于做出了,实时获取本地localStorage来模拟注册登入~~~

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>我们虽然很穷,但是我们有梦想</title>
<script src="angular.js"></script>
</head>
<body ng-app="zcsApp" ng-controller="zcsControl">
用 户 名:<input type="text" ng-model="name" /><br>
密  码:<input type="text" ng-model="pwd" /><br>
确认密码:<input type="text" ng-model="pwd2" /><br>
<input type="button" value="注册" ng-click=" ZhuCe()"/>
<input type="button" value="登入" ng-click=" Enter()"/>
<span style="color: red">{{message}}</span>
</body>
<script>
// var data={"name":"admin","pwd":"12"};
function PersonalInfo(name,pwd){
this.name=name;
this.pwd=pwd;
}
PersonalInfo.prototype.savaLocalStorage= function () {
var storage=window.localStorage.getItem("PersonalInfo");//得到的数据是字符串
storage=JSON.parse(storage) ||[];//字符串转换成对象
storage.push(this);
window.localStorage.setItem("PersonalInfo",JSON.stringify(storage));
};
PersonalInfo.selectByName= function (name,pwd) {
var storage=window.localStorage.getItem("PersonalInfo");
storage= storage?JSON.parse(storage):[];
return storage.some(function (v) {//返回一个布尔值
return v.name===name&& v.pwd;
})
};
PersonalInfo.prototype.hasName= function (name,pwd,fn,fn2) {
var storage=window.localStorage.getItem("PersonalInfo");//得到的数据是字符串
storage= storage?JSON.parse(storage):[];
var data=storage;
for(var i=0;i<data.length;i++){
var v=data[i];
if(name!==v.name&& pwd!==v.pwd) {
fn();
return;
}
};
};
angular.module("zcsApp",[])
.controller("zcsControl",["$scope", function ($scope) {
$scope.ZhuCe= function () {
$scope.message="";
var name=$scope.name;
var pwd=$scope.pwd;
var pwd2=$scope.pwd2;
// 若是输入为空或者undefined时
if(name===undefined||name.trim().length===0||pwd===undefined||pwd.trim().length===0||pwd2===undefined||pwd2.trim().length===0){
$scope.message="请输入完整信息";
return;
}
// 若输入的密码和确认密码不一致时
if(pwd!==pwd2){
$scope.message="俩次输入的密码不一致";
return;
}
// 判断本地是不是已经有这个名字
if(PersonalInfo.selectByName(name,pwd)){
$scope.message="此账号已注册";
return;
}
// 存储信息
var data=new PersonalInfo(name,pwd);
data.savaLocalStorage();
};
$scope.Enter= function () {
$scope.message="";
var name=$scope.name;
var pwd=$scope.pwd;
var per=new PersonalInfo(name,pwd);
if(PersonalInfo.selectByName(name)){
$scope.message="登入成功";
return;
}
per.hasName(name,pwd,function () {
$scope.message="账号错误或者密码不正确"
});//得到登入的信息
}
}])
</script>
</html>

以上所述是小编给大家介绍的用ANGULAR实时获取本地LOCALSTORAGE数据,实现一个模拟后台数据登入的效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
让人印象深刻的10个jQuery手风琴效果应用
May 08 Javascript
jquery入门—访问DOM对象方法
Jan 07 Javascript
Javascript 多浏览器兼容总结(实战经验)
Oct 30 Javascript
jQuery的animate函数学习记录
Aug 08 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
Sep 19 Javascript
js面向对象的写法
Feb 19 Javascript
基于JavaScript实现复选框的全选和取消全选
Feb 09 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
May 07 Javascript
初探JavaScript 面向对象(推荐)
Sep 03 Javascript
详解VUE2.X过滤器的使用方法
Jan 11 Javascript
jquery ajax 请求小技巧实例分析
Nov 11 jQuery
webpack DllPlugin xxx is not defined解决办法
Dec 13 Javascript
jQuery自定义组件(导入组件)
Nov 08 #Javascript
将json转换成struts参数的方法
Nov 08 #Javascript
easyui-combobox 实现简单的自动补全功能示例
Nov 08 #Javascript
easyui combobox开启搜索自动完成功能的实例代码
Nov 08 #Javascript
基于Vuejs框架实现翻页组件
Jun 29 #Javascript
vue2.0+webpack环境的构造过程
Nov 08 #Javascript
详解React-Todos入门例子
Nov 08 #Javascript
You might like
详细介绍:Apache+PHP+MySQL配置攻略
2006/09/05 PHP
php将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
2014/11/29 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
2016/09/22 PHP
Yii2汉字转拼音类的实例代码
2017/04/18 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
Thinkphp极验滑动验证码实现步骤解析
2020/11/24 PHP
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
Jquery 点击按钮自动高亮实现原理及代码
2014/04/25 Javascript
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
javascript+HTML5 Canvas绘制转盘抽奖
2020/05/16 Javascript
简单实现AngularJS轮播图效果
2020/04/10 Javascript
Bootstrap表单控件学习使用
2017/03/07 Javascript
原生JS实现隐藏显示图片 JS实现点击切换图片效果
2021/01/27 Javascript
react.js 父子组件数据绑定实时通讯的示例代码
2017/09/25 Javascript
Vue表单之v-model绑定下拉列表功能
2019/05/14 Javascript
[43:35]TI4 循环赛第二日Liquid vs Fnatic
2014/07/11 DOTA
在Python中操作字符串之startswith()方法的使用
2015/05/20 Python
python3模块smtplib实现发送邮件功能
2018/05/22 Python
Python线程同步的实现代码
2018/10/03 Python
Python 实现取多维数组第n维的前几位
2019/11/26 Python
django admin后管定制-显示字段的实例
2020/03/11 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
利用Vscode进行Python开发环境配置的步骤
2020/06/22 Python
如何完美的建立一个python项目
2020/10/09 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
css3 transform及原生js实现鼠标拖动3D立方体旋转
2016/06/20 HTML / CSS
基于 HTML5 的 WebGL 3D 版俄罗斯方块的示例代码
2018/05/28 HTML / CSS
酒店行政人事部经理职务说明书
2014/02/26 职场文书
施工单位安全责任书
2014/07/24 职场文书
岗位竞聘报告范文
2014/11/06 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
2016十一国庆节感言
2015/12/09 职场文书
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android
Web应用开发TypeScript使用详解
2022/05/25 Javascript