Files
PhotonVision/photon-client/src/components/common/cv-select.vue

58 lines
1.2 KiB
Vue
Raw Normal View History

<template>
<div>
<v-row
dense
align="center"
>
<v-col :cols="3">
<span>{{ name }}</span>
</v-col>
<v-col :cols="9">
<v-select
v-model="localValue"
:items="indexList"
item-text="name"
item-value="index"
dark
color="#4baf62"
item-color="green"
:disabled="disabled"
@change="$emit('rollback', localValue)"
/>
</v-col>
</v-row>
</div>
</template>
<script>
export default {
name: 'Select',
2019-10-29 23:58:06 +02:00
props: ['list', 'name', 'value', 'disabled'],
data() {
2019-10-29 23:58:06 +02:00
return {}
},
2019-10-29 23:58:06 +02:00
computed: {
localValue: {
get() {
return this.value;
},
2019-10-29 23:58:06 +02:00
set(value) {
this.$emit('input', value)
}
},
2019-10-29 23:58:06 +02:00
indexList() {
let list = [];
2019-10-29 23:58:06 +02:00
for (let i = 0; i < this.list.length; i++) {
list.push({
2019-10-29 23:58:06 +02:00
name: this.list[i],
index: i
});
}
return list;
}
}
}
</script>
<style>
</style>