美文网首页
slider 单个动态显示 marks label

slider 单个动态显示 marks label

作者: 偶头像超凶 | 来源:发表于2021-12-27 17:06 被阅读0次
    <!-- 
        如果是循环使用el-slider,那么就就需要将data中的marks,放到循环数据当中,将marks的数据源独立出来,不可以独立使用
     -->
    
    <template>
        <div style="width: 100%;display: flex;justify-content: center;align-items: center;">
            <el-slider style="width: 80%" v-model="value1" :marks.sync="marks" @input="getInfo" show-input></el-slider>
        </div>
    </template>
    
    <script>
        export default {
            data() {
                return {
                    value1: 0,
                    marks: {
                        0: '不及格',
                        60: '及格',
                        80: '良好',
                        90: '优秀',
                    }
                }
            },
            methods: {
                getInfo(v) {
                    let d = {}
                    if (v >= 0 && v < 60) {
                        d = {
                            0: {
                                label: '不及格',
                                style: {
                                    color: '#1989FA',
                                    fontWeight: 'bold'
                                },
                            },
                            60: '及格',
                            80: '良好',
                            90: '优秀',
                        }
                    } else if (v >= 60 && v < 80) {
                        d = {
                            0: '不及格',
                            60: {
                                label: '及格',
                                style: {
                                    color: '#1989FA',
                                    fontWeight: 'bold'
                                },
                            },
                            80: '良好',
                            90: '优秀',
                        }
                    } else if (v >= 80 && v < 90) {
                        d = {
                            0: '不及格',
                            60: '及格',
                            80: {
                                label: '良好',
                                style: {
                                    color: '#1989FA',
                                    fontWeight: 'bold'
                                },
                            },
                            90: '优秀',
                        }
                    } else if (v >= 90 && v <= 100) {
                        d = {
                            0: '不及格',
                            60: '及格',
                            80: '良好',
                            90: {
                                label: '优秀',
                                style: {
                                    color: '#1989FA',
                                    fontWeight: 'bold'
                                },
                            },
                        }
                    }
                    this.$set(this.marks, [0], d[0])
                    this.$set(this.marks, [60], d[60])
                    this.$set(this.marks, [80], d[80])
                    this.$set(this.marks, [90], d[90])
                }
            }
        }
    </script>
    
    

    相关文章

      网友评论

          本文标题:slider 单个动态显示 marks label

          本文链接:https://www.haomeiwen.com/subject/ssbyqrtx.html