用Angular實(shí)時(shí)獲取本地Localstorage數(shù)據(jù),實(shí)現(xiàn)一個(gè)模擬后臺數(shù)據(jù)登入的效果
研究了一上午,終于做出了,實(shí)時(shí)獲取本地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>
確認(rèn)密碼:<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");//得到的數(shù)據(jù)是字符串
storage=JSON.parse(storage) ||[];//字符串轉(zhuǎn)換成對象
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) {//返回一個(gè)布爾值
return v.name===name&& v.pwd;
})
};
PersonalInfo.prototype.hasName= function (name,pwd,fn,fn2) {
var storage=window.localStorage.getItem("PersonalInfo");//得到的數(shù)據(jù)是字符串
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時(shí)
if(name===undefined||name.trim().length===0||pwd===undefined||pwd.trim().length===0||pwd2===undefined||pwd2.trim().length===0){
$scope.message="請輸入完整信息";
return;
}
// 若輸入的密碼和確認(rèn)密碼不一致時(shí)
if(pwd!==pwd2){
$scope.message="倆次輸入的密碼不一致";
return;
}
// 判斷本地是不是已經(jīng)有這個(gè)名字
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="賬號錯(cuò)誤或者密碼不正確"
});//得到登入的信息
}
}])
</script>
</html>
以上所述是小編給大家介紹的用ANGULAR實(shí)時(shí)獲取本地LOCALSTORAGE數(shù)據(jù),實(shí)現(xiàn)一個(gè)模擬后臺數(shù)據(jù)登入的效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- JS localStorage實(shí)現(xiàn)本地緩存的方法
- 詳解JavaScript中l(wèi)ocalStorage使用要點(diǎn)
- 使用jquery讀取html5 localstorage的值的方法
- android webview 中l(wèi)ocalStorage無效的解決方法
- 在localStorage中存儲對象數(shù)組并讀取的方法
- cookie解決微信不能存儲localStorage的問題
- 利用php實(shí)現(xiàn)一周之內(nèi)自動(dòng)登錄存儲機(jī)制(cookie、session、localStorage)
- 移動(dòng)端使用localStorage緩存Js和css文的方法(web開發(fā))
- JS中利用localStorage防止頁面動(dòng)態(tài)添加數(shù)據(jù)刷新后數(shù)據(jù)丟失
- 本地存儲localStorage用法詳解
相關(guān)文章
如何在Angular應(yīng)用中創(chuàng)建包含組件方法示例
這篇文章主要給大家介紹了關(guān)于如何在Angular應(yīng)用中創(chuàng)建包含組件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Angular具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
Angular ng-animate和ng-cookies用法詳解
本文講一下Angular中動(dòng)畫應(yīng)用的部分。這篇文章主要介紹了Angular ng-animate和ng-cookies用法詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04
angularJs使用$watch和$filter過濾器制作搜索篩選實(shí)例
本篇文章主要介紹了angularJs使用$watch和$filter過濾器制作搜索篩選實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Angular動(dòng)畫實(shí)現(xiàn)的2種方式以及添加購物車動(dòng)畫實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于Angular動(dòng)畫的2種方式以及添加購物車動(dòng)畫的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08
AngularJs返回前一頁面時(shí)刷新一次前面頁面的方法
今天小編就為大家分享一篇AngularJs返回前一頁面時(shí)刷新一次前面頁面的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10

