V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lebus
V2EX  ›  Vue.js

laravel,vue 怎么实现游客刷新之后,只显示点过赞的那条评论被点赞,而不要所有的评论都显示被点赞?

  •  1
     
  •   lebus · 2018-03-23 12:19:56 +08:00 · 2260 次点击
    这是一个创建于 2421 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 vue 做的点赞和点踩组件。

    用的 localstorage 存储了游客用户是否已点赞(点赞就设定 isLike 为 1,取消点赞则移除 isLike ),刷新之前一切都好好的。 刷新之后,因为在 mounted 方法里面判断 localstorage 是否有值,有的话改变点赞按钮的状态(颜色,文本)。 结果:只要点过了一个评论的赞,所有的评论都显示被点过赞了。

    想再存一个被点赞的评论 id 进 localstorage 的,然后在 mounted 里面判断此评论 id 是否有值,但是这样每次都刷新了 localstorage 里面的值,所以只能显示其中一条被点过赞,不能显示几条。

    想了几天没想出来,请各位大神不吝赐教。

    mounted() {
            if(localStorage.getItem('isLike')==='1'){
                this.isLikeReview=true
            }else if(localStorage.getItem('isHate')==='1'){
                this.isHateReview=true
            }else if(this.is_login) {
                axios.get(`/reviews/${this.review}/like`)
                    .then(response => {
                        // console.log(response);
                        this.isLikeReview = response.data.is_like_review;
                    });
                axios.get(`/reviews/${this.review}/hate`)
                    .then(response => {
                        this.isHateReview = response.data.is_hate_review;
                    })
            }
        },
    
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1140 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:37 · PVG 02:37 · LAX 10:37 · JFK 13:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.