Blame view

examples/routers/form.vue 6.17 KB
9f5e2c7e   梁灏   update Form
1
  <template>
21dad188   梁灏   prevent dispatch ...
2
3
4
      <div>
          date: {{ formInline.date }}
          <i-form ref="formInline" :model="formInline" :rules="ruleInline">
5ee64b6d   梁灏   fixed #430
5
              <Form-item prop="date" label="日期">
21dad188   梁灏   prevent dispatch ...
6
7
                  <Date-picker type="date" placeholder="选择日期" v-model="formInline.date"></Date-picker>
              </Form-item>
5ee64b6d   梁灏   fixed #430
8
              <Form-item prop="value2" label="级联选择">
04e5e3cd   梁灏   prevent dispatch ...
9
10
                  <Cascader :data="formInline.data" v-model="formInline.value2" change-on-select></Cascader>
              </Form-item>
5ee64b6d   梁灏   fixed #430
11
              <Form-item prop="user" label="输入框">
430ddd88   梁灏   fixed #396
12
                  <Input v-model="formInline.user"></Input>
21dad188   梁灏   prevent dispatch ...
13
              </Form-item>
5ee64b6d   梁灏   fixed #430
14
              <Form-item prop="targetKeys1" label="穿梭框">
7c2ed52c   梁灏   update Checkbox
15
                  <Transfer
aa9fc758   梁灏   update Transfer
16
                      filterable
7c2ed52c   梁灏   update Checkbox
17
18
19
20
21
22
                      :data="formInline.data1"
                      :target-keys="formInline.targetKeys1"
                      :render-format="render1"
                      @on-change="handleChange1"></Transfer>
              </Form-item>
              <Form-item>
21dad188   梁灏   prevent dispatch ...
23
24
25
26
                  <i-button type="primary" @click.native="handleSubmit('formInline')">登录</i-button>
              </Form-item>
          </i-form>
      </div>
9f5e2c7e   梁灏   update Form
27
28
29
  </template>
  <script>
      export default {
9f5e2c7e   梁灏   update Form
30
          data () {
184dba1c   梁灏   update Form
31
              return {
257f80f1   梁灏   support Form
32
                  formInline: {
7c2ed52c   梁灏   update Checkbox
33
34
                      data1: this.getMockData(),
                      targetKeys1: this.getTargetKeys(),
21dad188   梁灏   prevent dispatch ...
35
                      date: new Date(),
04e5e3cd   梁灏   prevent dispatch ...
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
                      user: '',
                      value2: [],
                      data: [{
                          value: 'beijing',
                          label: '北京',
                          children: [
                              {
                                  value: 'gugong',
                                  label: '故宫'
                              },
                              {
                                  value: 'tiantan',
                                  label: '天坛'
                              },
                              {
                                  value: 'wangfujing',
                                  label: '王府井'
                              }
                          ]
                      }, {
                          value: 'jiangsu',
                          label: '江苏',
                          children: [
                              {
                                  value: 'nanjing',
                                  label: '南京',
                                  children: [
                                      {
                                          value: 'fuzimiao',
                                          label: '夫子庙',
                                      }
                                  ]
                              },
                              {
                                  value: 'suzhou',
                                  label: '苏州',
                                  children: [
                                      {
                                          value: 'zhuozhengyuan',
                                          label: '拙政园',
                                      },
                                      {
                                          value: 'shizilin',
                                          label: '狮子林',
                                      }
                                  ]
                              }
                          ],
                      }]
c3a9f389   梁灏   update Input
85
                  },
257f80f1   梁灏   support Form
86
                  ruleInline: {
21dad188   梁灏   prevent dispatch ...
87
88
89
90
91
92
93
                      date: [
                          {
                              required: true,
                              type: 'date',
                              message: '请选择日期',
                              trigger: 'change'
                          }
257f80f1   梁灏   support Form
94
                      ],
21dad188   梁灏   prevent dispatch ...
95
96
97
98
99
100
101
102
103
104
105
106
                      user: [
                          {
                              required: true,
                              message: '请输入',
                              trigger: 'change',
                              min: 10
                          },
                          {
                              required: true,
                              message: '请输入2',
                              trigger: 'blur'
                          }
04e5e3cd   梁灏   prevent dispatch ...
107
108
109
110
111
112
113
114
                      ],
                      value2: [
                          {
                              required: true,
                              type: 'array',
                              message: '请输入',
                              trigger: 'change'
                          }
aa9fc758   梁灏   update Transfer
115
116
117
118
119
120
121
122
123
                      ],
                      targetKeys1: [
                          {
                              required: true,
                              type: 'array',
                              max: 2,
                              message: '太多了',
                              trigger: 'change'
                          }
257f80f1   梁灏   support Form
124
                      ]
184dba1c   梁灏   update Form
125
126
                  }
              }
9f5e2c7e   梁灏   update Form
127
          },
184dba1c   梁灏   update Form
128
          methods: {
257f80f1   梁灏   support Form
129
              handleSubmit(name) {
c3a9f389   梁灏   update Input
130
131
                  this.$refs[name].validate((valid) => {
                      if (valid) {
21dad188   梁灏   prevent dispatch ...
132
                          this.$Message.success('提交成功!');
c3a9f389   梁灏   update Input
133
                      } else {
21dad188   梁灏   prevent dispatch ...
134
                          this.$Message.error('表单验证失败!');
c3a9f389   梁灏   update Input
135
136
                      }
                  })
21dad188   梁灏   prevent dispatch ...
137
138
139
              },
              handleInput (val) {
                  console.log(val)
7c2ed52c   梁灏   update Checkbox
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
              },
              getMockData () {
                  let mockData = [];
                  for (let i = 1; i <= 20; i++) {
                      mockData.push({
                          key: i.toString(),
                          label: '内容' + i,
                          description: '内容' + i + '的描述信息',
                          disabled: Math.random() * 3 < 1
                      });
                  }
                  return mockData;
              },
              getTargetKeys () {
                  return this.getMockData()
                      .filter(() => Math.random() * 2 > 1)
                      .map(item => item.key);
              },
              render1 (item) {
                  return item.label;
              },
              handleChange1 (newTargetKeys, direction, moveKeys) {
                  console.log(newTargetKeys);
                  console.log(direction);
                  console.log(moveKeys);
                  this.formInline.targetKeys1 = newTargetKeys;
184dba1c   梁灏   update Form
166
167
              }
          }
8bca1070   梁灏   update Input on-f...
168
169
      }
  </script>