用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 相关文章推荐
自定义一个jquery插件[鼠标悬浮时候 出现说明label]
Jun 27 Javascript
不提示直接关闭网页窗口的JS示例代码
Dec 17 Javascript
js浮点数精确计算(加、减、乘、除)
Dec 26 Javascript
微信小程序 高德地图SDK详解及简单实例(源码下载)
Jan 11 Javascript
基于JavaScript实现自定义滚动条
Jan 25 Javascript
canvas绘制七巧板
Feb 03 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
Sep 11 jQuery
jQuery轮播图实例详解
Aug 15 jQuery
node命令行工具之实现项目工程自动初始化的标准流程
Aug 12 Javascript
vue实现在v-html的html字符串中绑定事件
Oct 28 Javascript
vue瀑布流组件实现上拉加载更多
Mar 10 Javascript
JavaScript经典案例之简易计算器
Aug 24 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
PHP 页面跳转到另一个页面的多种方法方法总结
2009/07/07 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
2012/08/08 PHP
php使用Imagick生成图片的方法
2015/07/31 PHP
Yii中Model(模型)的创建及使用方法
2015/12/28 PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
2018/01/16 PHP
javascript 获取图片颜色
2009/04/05 Javascript
Js 获取Gridview选中行的内容操作步骤
2013/02/05 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
javascript设计模式--策略模式之输入验证
2015/11/27 Javascript
酷炫jQuery全屏3D焦点图动画效果
2016/03/22 Javascript
ECHO.js 纯javascript轻量级延迟加载的实例代码
2016/05/24 Javascript
jquery+ajax实现直接提交表单实例分析
2016/06/17 Javascript
jquery表单验证实例仿Toast提示效果
2017/03/03 Javascript
Vue.js实现一个todo-list的上移下移删除功能
2017/06/26 Javascript
JS判断Android、iOS或浏览器的多种方法(四种方法)
2017/06/29 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
vue写h5页面的方法总结
2019/02/12 Javascript
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
微信小程序利用云函数获取手机号码
2019/12/17 Javascript
node使用request请求的方法
2019/12/20 Javascript
python并发编程之多进程、多线程、异步和协程详解
2016/10/28 Python
Python选择网卡发包及接收数据包
2019/04/04 Python
解决Python3.8用pip安装turtle-0.0.2出现错误问题
2020/02/11 Python
pyqt5 textEdit、lineEdit操作的示例代码
2020/08/12 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
迪斯尼商品官方网站:ShopDisney
2016/08/01 全球购物
马德里著名的运动鞋商店:NOIRFONCE
2019/04/12 全球购物
外企测试工程师面试题
2015/02/01 面试题
创业计划书六个要素
2013/12/26 职场文书
中学教师培训制度
2014/01/31 职场文书
高一化学教学反思
2014/02/05 职场文书
中专毕业生个人职业生涯规划
2014/02/19 职场文书
党员公开承诺践诺书
2014/03/25 职场文书
服装店员工管理制度
2015/08/07 职场文书
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
2021/07/16 Java/Android
MySQL数据库查询之多表查询总结
2022/08/05 MySQL