search.vue 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <!-- 搜索表单 --> 6
  2. <template>
  3. <el-form label-width="90px" class="ele-form-search" @keyup.enter.native="search" @submit.native.prevent>
  4. <el-row :gutter="15">
  5. <el-col v-bind="styleResponsive ? { lg: 5, md: 10 } : { span: 4}">
  6. <el-form-item label="名称:">
  7. <el-input clearable v-model="where.name" placeholder="请输入" />
  8. </el-form-item>
  9. </el-col>
  10. <el-col v-bind="styleResponsive ? { lg: 5, md: 10 } : { span: 4}">
  11. <el-form-item label="编码:">
  12. <el-input clearable v-model="where.standardCode" placeholder="请输入" />
  13. </el-form-item>
  14. </el-col>
  15. <el-col v-bind="styleResponsive ? { lg: 5, md: 10 } : { span: 4}">
  16. <el-form-item label="状态:">
  17. <el-select v-model="where.status" class="m-2" placeholder="请选择" size="large">
  18. <el-option label="停用" :value="0" />
  19. <el-option label="启用" :value="1" />
  20. </el-select>
  21. </el-form-item>
  22. </el-col>
  23. <el-col v-bind="styleResponsive ? { lg: 4, md: 10 } : { span: 4}">
  24. <div class="ele-form-actions">
  25. <el-button type="primary" icon="el-icon-search" class="ele-btn-icon" @click="search">
  26. 查询
  27. </el-button>
  28. <el-button @click="reset">重置</el-button>
  29. </div>
  30. </el-col>
  31. </el-row>
  32. </el-form>
  33. </template>
  34. <script>
  35. export default {
  36. data() {
  37. // 默认表单数据
  38. const defaultWhere = {
  39. name: '',
  40. standardCode: '',
  41. status: ''
  42. };
  43. return {
  44. defaultWhere,
  45. // 表单数据
  46. where: { ...defaultWhere },
  47. };
  48. },
  49. computed: {
  50. // 是否开启响应式布局
  51. styleResponsive() {
  52. return this.$store.state.theme.styleResponsive;
  53. }
  54. },
  55. methods: {
  56. /* 搜索 */
  57. search() {
  58. this.$emit('search', this.where);
  59. },
  60. /* 重置 */
  61. reset() {
  62. this.where = { ...this.defaultWhere };
  63. this.search();
  64. }
  65. }
  66. };
  67. </script>