org-select.vue 833 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <!-- 机构选择下拉框 -->
  2. <template>
  3. <ele-tree-select
  4. ref="tree"
  5. clearable
  6. :value="value || ''"
  7. :data="data"
  8. label-key="name"
  9. value-key="id"
  10. default-expand-all
  11. :placeholder="placeholder"
  12. @input="updateValue"
  13. />
  14. </template>
  15. <script>
  16. export default {
  17. props: {
  18. // 选中的数据(v-model)
  19. value: [Number,String],
  20. // 提示信息
  21. placeholder: {
  22. type: String,
  23. default: '请选择机构'
  24. },
  25. // 机构数据
  26. data: Array
  27. },
  28. methods: {
  29. /* 更新选中数据 */
  30. updateValue(value) {
  31. this.$emit('input', value);
  32. let nodesInfo = []
  33. nodesInfo = this.$refs['tree'].getHalfCheckedKeys()
  34. nodesInfo.push(value)
  35. this.$emit('checkedKeys', nodesInfo)
  36. }
  37. }
  38. };
  39. </script>