首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有登录Angular的用户交互?

没有登录Angular的用户交互?
EN

Stack Overflow用户
提问于 2020-06-23 18:29:07
回答 1查看 99关注 0票数 0

在我的网站上有用户和访客,我希望两者都能在我的网站上“喜欢”元素。对于用户来说,检查他们是否已经“喜欢”了一个特定的元素,以防止他们给同一个元素另一个“喜欢”,这不是问题,但我不确定如何检查访客是否“喜欢”了一个元素,以防止一个特定访客的多次点赞。我正在使用Angular,我想过用cookies保存这些信息,但我还不知道如何保存,以及它是否足够可信。有关于如何实现它们的想法吗?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-06-26 16:32:56

最好的方法是使用 localStorage ,更复杂的是在localStorage中使用Hush (值和键)。

HTML

代码语言:javascript
复制
<button type="button" (click)="liked()">
          <span *ngIf="!unlike">like</span>
          <span *ngIf="unlike">unlike</span>
          {{like}}
</button>

TS

代码语言:javascript
复制
like=99
unlike:Boolean=true

liked(){
 if(localStorage.getItem('like') == null){
 localStorage.setItem('like','true')
  this.like=this.like+1;
  this.unlike =!this.unlike
  
}else{
  localStorage.removeItem('like')
  this.like=this.like-1
  this.unlike =!this.unlike
}

}
代码语言:javascript
复制
like=99;
ipActionLike =['1','2'] ;
unlike:Boolean=true;

liked(){
//get information browser user ip 
 if(localStorage.getItem('like') == null){
   for (var i = 0; i <this.ipActionLike.length; i++) { 
      if (this.itemArray[i] == ipUser) { 
          //remove ipUser from array
           localStorage.removeItem('like');
           this.like=this.like-1;
           this.unlike =!this.unlike; } 
      else{
          //push ipUser to array
          localStorage.setItem('like','true')
           this.like=this.like+1;
            this.unlike =!this.unlike }
  }

}
  
}else{
   //push ipUser to array
  localStorage.removeItem('like')
  this.like=this.like-1
  this.unlike =!this.unlike
   }
}

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62532641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档