selection.vue 723 Bytes
<template>
  <select v-model="selected" :id='id'>
    <option v-if="empty" value="">{{emptyText}}</option>
    <option v-for="item in list" :value="item.value!=undefined?item.value: item">{{ item.label || item }}</option>
  </select>
</template>
<script>
  module.exports = {
    props: {
      list: {
        type: Array,
        require: true
      },
      selected: {
        // type:Boolean,  // 类型无法确定报错,
        // twoWay: true,  // 双向数据绑定错误
        defaul:''
      },
      empty: {
        type: Boolean,
        default: true
      },
      emptyText: {
        type: String,
        default: '--请选择--'
      },
      id:{
        type: String
      }
    }
  };
</script>