1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
  | <template> 
 |      <GlobalWindow 
 |        :title="title" 
 |        :visible.sync="visible" 
 |        :confirm-working="isWorking" 
 |        @confirm="confirm" 
 |      > 
 |        <el-form :model="form" ref="form" :rules="rules"> 
 |          <el-form-item label="品牌名称" prop="name"> 
 |            <el-input v-model="form.name" maxlength="20" placeholder="请输入,不超过20个字符" v-trim/> 
 |          </el-form-item> 
 |          <el-form-item label="图标" prop="imgurl"> 
 |              <el-upload 
 |              :action="action" 
 |              :file-list="form.fileList" 
 |              :data="{ folder: 'brand_img' }" 
 |              list-type="picture-card" 
 |              :limit="1" 
 |              :on-success="fileSuccess" 
 |              :on-exceed="exceed" 
 |              :on-remove="handleRemove"> 
 |              <i class="el-icon-plus"></i> 
 |              <div slot="tip" class="el-upload__tip">只能上传图片格式,png格式,建议尺寸200*200px</div> 
 |            </el-upload> 
 |          </el-form-item> 
 |          <el-form-item label="排序码" prop="sortnum"> 
 |            <el-input v-model="form.sortnum" placeholder="请输入排序码" v-trim/> 
 |          </el-form-item> 
 |        </el-form> 
 |      </GlobalWindow> 
 |    </template> 
 |     
 |    <script> 
 |    import BaseOpera from '@/components/base/BaseOpera' 
 |    import GlobalWindow from '@/components/common/GlobalWindow' 
 |    export default { 
 |      name: 'OperaBrandWindow', 
 |      extends: BaseOpera, 
 |      components: { GlobalWindow }, 
 |      data () { 
 |        return { 
 |          action: process.env.VUE_APP_API_PREFIX + '/public/upload', 
 |          // 表单数据 
 |          form: { 
 |            id: null, 
 |            name: '', 
 |            sortnum: '', 
 |            imgurl: '', 
 |            fileList: [], 
 |          }, 
 |          // 验证规则 
 |          rules: { 
 |              name: [ 
 |                  { required: true, message: '不能为空', trigger: 'blur' } 
 |              ] 
 |          } 
 |        } 
 |      }, 
 |      created () { 
 |        this.config({ 
 |          api: '/business/brand', 
 |          'field.id': 'id' 
 |        }) 
 |      }, 
 |      methods: { 
 |          fileSuccess(response) { 
 |              this.form.fileList.push({ imgaddr: response.data.imgaddr, url: response.data.url }) 
 |              this.form.imgurl = response.data.imgaddr 
 |          }, 
 |          handleRemove() { 
 |              this.form.fileList = [] 
 |              this.form.imgurl = '' 
 |          }, 
 |          exceed() { 
 |              this.$message.warning({ 
 |                  message: '只能上传一个图标' 
 |              }) 
 |          } 
 |      }, 
 |      watch: { 
 |        visible: { 
 |          handler(news, old) { 
 |            if (!news) { 
 |              this.form = { 
 |                  id: null, 
 |                  name: '', 
 |                  sortnum: '', 
 |                  imgurl: '', 
 |                  fileList: [], 
 |              } 
 |            } 
 |          } 
 |        } 
 |      } 
 |    } 
 |    </script> 
 |     
 |  
  |