You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.0 KiB

<template>
<el-checkbox-group v-model="select" @change="changeSelect">
<el-checkbox v-for="v in list" :label="v"> {{ v.zimu }} {{ v.title }} </el-checkbox>
</el-checkbox-group>
</template>
<script>
import {findObject} from "@/utils/utils";
import {each} from "@/utils/extend";
export default {
name: "t-checkbox",
data () {
return {
select:[],
}
},
props:{
obj:Object,
paper:String,
daan:String
},
computed:{
list(){
if(!this.paper){
return [];
}
return eval("("+this.paper+")")
}
},
methods:{
changeSelect(val){
var daan = [];
var zimu = [];
var defen = 0;
each(this.select , (i,o)=>{
daan.push(o.title);
zimu.push(o.zimu);
defen +=Math.floor( o.point === undefined ? o.defen : o.point);
});
this.obj.zimu = zimu.join(","),
this.obj[this.daan] = daan.join(","),
this.obj.defen = defen;
}
}
}
</script>
<style scoped>
</style>