明晋仓库前台
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.

selectorFromDic.vue 1.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <template>
  2. <div>
  3. <el-select v-model="inputValue" placeholder="请选择" style="width:100%;" :size="size" @change="curSelect" clearable >
  4. <el-option v-for="item in options" :key="item.dicCode" :label="item.dicName" :value="item.dicCode">
  5. </el-option>
  6. </el-select>
  7. </div>
  8. </template>
  9. <script>
  10. import axios from '@/axios';
  11. export default {
  12. props: {
  13. type: '',
  14. size: '',
  15. inputValue: {
  16. type: String
  17. },
  18. },
  19. data() {
  20. return {
  21. options: [],
  22. invalue: '',
  23. obj: {}
  24. };
  25. },
  26. methods: {
  27. getTableData() {
  28. var url = 'Common/querySelector.do'
  29. var param = {
  30. type: this.type,
  31. }
  32. axios.get(url, param).then(response => {
  33. this.options = response.data.data
  34. });
  35. },
  36. curSelect(value) {
  37. //console.log(value);
  38. let obj = {};
  39. obj = this.options.find((item) => {
  40. return item.dicCode === value;
  41. });
  42. //console.log(obj.dicName);
  43. this.$emit('receviceFromSelector', obj.dicCode,obj.dicName);
  44. }
  45. },
  46. mounted() {
  47. this.getTableData()
  48. }
  49. }
  50. </script>
  51. <style>
  52. </style>