VUE 如何让徽章消失

当badge为0时,一般不让他显示0,而是让他消失,即让badge隐藏,给他一个v-show来绑定,一开始默认为false,当badge不为0时,就显示true,等他在为0时,设置为false(再一次隐藏)

在template模板:

<span class="mui-badge budge" v-show="budge">{{budge_num}}</span>

 在export default的data return 里面定义:

budge:false,  //默认显示badge隐藏,当大于0是才显示
budge_num:0

在methods里面写方法

//徽章事件
            getBadge(){
                this.user = JSON.parse(localStorage.getItem("user"))
                this.$http
                    .post('api/v1/getjieban', {
                        token:this.user.token
                    })
                    .then(function(result) {
                        if(result.body.status === 200) {
                            //一开始默认budge为false,如果没有接班信息,那么继续为false
                            if(result.body.data.length === 0){
                                this.budge = false
                            }else{
                                //当有接班信息时,budge设置为true ,并给budge_num赋给接班数据的长度
                                this.budge = true
                                this.budge_num = result.body.data.length
                            }
                        } else if(result.body.status === 201) {
                            Toast({
                                message: result.body.message,
                                duration: 2000
                            });
                        }
                    }, function(result) {
                        Toast({
                            message: "服务器异常",
                            duration: 2000
                        })
                    })
            },

 在created里去调用methods的方法初始化

this.getBadge()

 

posted @ 2020-03-12 11:35  懒噗噗的博客小家  阅读(1079)  评论(0编辑  收藏  举报