Javascript 如何在重新加载页面后记住变量的值?
我想记住变量Javascript 如何在重新加载页面后记住变量的值?,javascript,html,angular,typescript,angular6,Javascript,Html,Angular,Typescript,Angular6,我想记住变量loggedIn的值,因为appComponent.html中相应函数的值取决于它的值。请告诉我如何实现它 应用程序组件的团队板: {{this.loggedInService.loggedIn?'Exit':'Enter'} 使用 例如: localStorage.setItem('loggedIn', loggedIn); 使用 例如: localStorage.setItem('loggedIn', loggedIn); 用户登录LoggedinService的logi
loggedIn
的值,因为appComponent.html
中相应函数的值取决于它的值。请告诉我如何实现它
应用程序组件的团队板:
{{this.loggedInService.loggedIn?'Exit':'Enter'}
使用
例如:
localStorage.setItem('loggedIn', loggedIn);
使用
例如:
localStorage.setItem('loggedIn', loggedIn);
用户登录
LoggedinService
的login
方法后,您已经存储了login
现在,即使您重新加载页面,您也可以使用以下方法从那里获取它:
// Add this property in your app.component.ts
loggedIn = localStorage.getItem('login');
如果用户在重新加载页面之前登录,则返回“true”
然后可以创建以下类:
.btn-outline-success {
background: 'green';
}
.btn-outline-danger {
background: 'green';
}
然后在app.component.html中使用如下语法动态使用这些类:
<li class="nav-item">
<a
class="btn"
[ngClass]="loggedIn === 'true' ? 'btn-outline-success': 'btn-outline-danger'"
(click)="this.loggedInService.loggedIn ? logout() : logIn()">
{{this.loggedInService.loggedIn? 'Exit' : 'Enter'}}
</a>
</li>
{{this.loggedInService.loggedIn?'Exit':'Enter'}
在用户登录LoggedinService
的login
方法后,您已经存储了login
现在,即使您重新加载页面,您也可以使用以下方法从那里获取它:
// Add this property in your app.component.ts
loggedIn = localStorage.getItem('login');
如果用户在重新加载页面之前登录,则返回“true”
然后可以创建以下类:
.btn-outline-success {
background: 'green';
}
.btn-outline-danger {
background: 'green';
}
然后在app.component.html中使用如下语法动态使用这些类:
<li class="nav-item">
<a
class="btn"
[ngClass]="loggedIn === 'true' ? 'btn-outline-success': 'btn-outline-danger'"
(click)="this.loggedInService.loggedIn ? logout() : logIn()">
{{this.loggedInService.loggedIn? 'Exit' : 'Enter'}}
</a>
</li>
{{this.loggedInService.loggedIn?'Exit':'Enter'}
对于角度为6的管路:
npm安装@ngx pwa/local-storage@6
对于角度5运行:
npm安装@ngx pwa/local-storage@5
将此添加到您的应用程序模块:
导入:[
LocalStorageModule,
//此处导入其他模块
],
服务函数
导出类LoggedinService实现OnInit{
重定向URL:字符串;
loggedIn:boolean=false;
构造函数(私有localStorage:localStorage){}
ngOnInit():void{}
login():布尔值{
this.localStorage.setItem('login','true').subscribe(res=>{
this.loggedIn=true;
});
返回this.loggedIn=true;
}
注销():布尔值{
this.localStorage.removietem('login').subscribe(res=>{
this.loggedIn=false;
});
返回this.loggedIn=false;
}
}
对于角度为6的管路:
npm安装@ngx pwa/local-storage@6
对于角度5运行:
npm安装@ngx pwa/local-storage@5
将此添加到您的应用程序模块:
导入:[
LocalStorageModule,
//此处导入其他模块
],
服务函数
导出类LoggedinService实现OnInit{
重定向URL:字符串;
loggedIn:boolean=false;
构造函数(私有localStorage:localStorage){}
ngOnInit():void{}
login():布尔值{
this.localStorage.setItem('login','true').subscribe(res=>{
this.loggedIn=true;
});
返回this.loggedIn=true;
}
注销():布尔值{
this.localStorage.removietem('login').subscribe(res=>{
this.loggedIn=false;
});
返回this.loggedIn=false;
}
}
您可能需要研究cookies:d请注意,您的策略具有巨大的安全风险。如果你依赖于客户端的loggedIn值是真是假,那么这个值很容易被渗透者伪造,并且可能会发生不想要的事情,比如身份盗窃、数据泄露等等。您可能不想这样。您可能想研究cookies:d请注意,您的策略具有巨大的安全风险。如果你依赖于客户端的loggedIn值是真是假,那么这个值很容易被渗透者伪造,并且可能会发生不想要的事情,比如身份盗窃、数据泄露等等。你可能不想这样。我需要在重新加载后保存按钮样式,它们取决于变量的值,如何实现?@IgorShvets,我已经相应地更新了答案。请检查这是否有帮助。@SiddAjmera您不能在模板中使用此
。我需要在重新加载后保存按钮样式,它们取决于变量的值,如何实现?@IgorShvets,我已相应地更新了我的答案。请检查这是否有帮助。@SiddAjmera您不能在模板中使用this