Skip to content

Commit 7644f14

Browse files
committed
update docs: code hilight, add advace section
1 parent e9be804 commit 7644f14

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+2063
-1322
lines changed

form-generator.svg

Lines changed: 942 additions & 942 deletions
Loading

form-generator.xmind

50.3 KB
Binary file not shown.

src/fieldGenerator.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
:inline="inline"
4848
:api-base="apiBase"
4949
:size="field.size || size"
50-
:request-interceptor="requestInterceptor"
50+
:dynamic-config-data="requestInterceptor"
5151
:params-container="paramsContainer"
5252
@on-change="handleFieldChange"
5353
@on-preview="handleFieldPreview"

src/formGenerator.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
:size="options.size"
3939
:item-width="options.itemWidth"
4040
:inline="options.inline"
41-
:request-interceptor="requestInterceptor"
41+
:dynamic-config-data="requestInterceptor"
4242
:params-container="paramsContainer"
4343
@on-field-change="handleFieldChange"
4444
@on-field-preview="handleFieldPreview"
@@ -414,7 +414,7 @@ export default {
414414
handleButtonCancel($event) {
415415
this.$emit('on-button-cancel', $event);
416416
},
417-
417+
418418
handelCheckboxCardClick(value) {
419419
this.$emit('on-checkboxCard-click', value);
420420
},

website/code/development/requestInterceptor.js renamed to website/code/development/dynamic-config-data.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,17 +72,17 @@ export default {
7272
reject(e);
7373
})
7474
});
75-
75+
7676
}
7777
}
78-
78+
7979
};
80-
<script>
80+
</script>
8181
<template>
8282
<Form :model="model">
8383
<FieldGenerator
8484
:field="field"
85-
:request-interceptor="requestInterceptor"
85+
:dynamic-config-data="requestInterceptor"
8686
/>
8787
</Form>
8888
</template>
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
// 使用api
2+
let api = {};
3+
const apiField = {
4+
type: 'Select',
5+
model: 'city',
6+
options: '/selectApi',
7+
defaultValueIndex: 0
8+
};
9+
10+
const apiModel = {
11+
city: ''
12+
};
13+
14+
api.data = {
15+
field: apiField,
16+
model: apiModel
17+
};
18+
19+
api.code = `
20+
<script>
21+
const field = ${JSON.stringify(apiField, null, 4)};
22+
export default {
23+
data() {
24+
return {
25+
field,
26+
model: ${JSON.stringify(apiModel)}
27+
};
28+
},
29+
methods: {
30+
requestInterceptor(method = 'get', url, params) {
31+
const interceptor = {
32+
reqHandle(conf) {
33+
const {url, params, method} = conf;
34+
const postData = {
35+
url,
36+
method,
37+
params: {
38+
...params,
39+
// 一些附加请求参数
40+
product: 'your params',
41+
}
42+
};
43+
return postData;
44+
},
45+
resHandle(res) {
46+
const {status, data} = res;
47+
let resData = [];
48+
if (status === 0 && data) {
49+
// 对后端返回的data做一些特殊处理 便于前端数据展示渲染
50+
data.forEach(item => {
51+
resData.push({
52+
label: '我爱' + item.label,
53+
value: item.value
54+
})
55+
});
56+
}
57+
return {
58+
status: 0,
59+
data: resData
60+
}
61+
}
62+
};
63+
return new Promise((resolve, reject) => {
64+
axios.request(interceptor.reqHandle({
65+
url,
66+
method,
67+
params
68+
})).then(res => {
69+
const data = interceptor.resHandle(res.data);
70+
resolve(data);
71+
}).catch(e => {
72+
reject(e);
73+
})
74+
});
75+
76+
}
77+
}
78+
79+
};
80+
</script>
81+
<template>
82+
<Form :model="model">
83+
<FieldGenerator
84+
:field="field"
85+
:dynamic-config-data="requestInterceptor"
86+
/>
87+
</Form>
88+
</template>
89+
`;
90+
91+
export default {
92+
api
93+
};
File renamed without changes.

website/code/development/formValidate.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export default {
3535
}
3636
}
3737
};
38-
<script>
38+
</script>
3939
<template>
4040
<FormGenerator
4141
:fields="fields"
@@ -83,7 +83,7 @@ export default {
8383
}
8484
}
8585
};
86-
<script>
86+
</script>
8787
<template>
8888
<FormGenerator
8989
:fields="fields"
@@ -134,7 +134,7 @@ export default {
134134
}
135135
}
136136
};
137-
<script>
137+
</script>
138138
<template>
139139
<FormGenerator
140140
:fields="fields"
@@ -201,7 +201,7 @@ export default {
201201
}
202202
}
203203
};
204-
<script>
204+
</script>
205205
<template>
206206
<FormGenerator
207207
:fields="fields"
@@ -279,7 +279,7 @@ export default {
279279
}
280280
}
281281
};
282-
<script>
282+
</script>
283283
<template>
284284
<FormGenerator
285285
:fields="fields"
@@ -370,7 +370,7 @@ export default {
370370
}
371371
}
372372
};
373-
<script>
373+
</script>
374374
<template>
375375
<FormGenerator
376376
:fields="fields"

website/code/development/uninionRequest.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export default {
2828
};
2929
}
3030
};
31-
<script>
31+
</script>
3232
<template>
3333
<FormGenerator
3434
:fields="fields"
@@ -68,7 +68,7 @@ export default {
6868
};
6969
}
7070
};
71-
<script>
71+
</script>
7272
<template>
7373
<FormGenerator
7474
:fields="fields"
@@ -118,7 +118,7 @@ export default {
118118
};
119119
}
120120
};
121-
<script>
121+
</script>
122122
<template>
123123
<FormGenerator
124124
:fields="fields"
@@ -162,7 +162,7 @@ export default {
162162
};
163163
}
164164
};
165-
<script>
165+
</script>
166166
<template>
167167
<FormGenerator
168168
:fields="fields"

website/code/development/showOnhiddenOn.js renamed to website/code/development/visibility.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export default {
5656
}
5757
}
5858
};
59-
<script>
59+
</script>
6060
<template>
6161
<FormGenerator
6262
:fields="fields"
@@ -115,7 +115,7 @@ export default {
115115
}
116116
}
117117
};
118-
<script>
118+
</script>
119119
<template>
120120
<div>
121121
<RadioGroup v-model="code.params.data.paramsContainer.isShow" size="small">
@@ -184,7 +184,7 @@ export default {
184184
}
185185
}
186186
};
187-
<script>
187+
</script>
188188
<template>
189189
<FormGenerator
190190
:fields="fields"
@@ -283,7 +283,7 @@ export default {
283283
}
284284
}
285285
};
286-
<script>
286+
</script>
287287
<template>
288288
<FormGenerator
289289
:fields="fields"

0 commit comments

Comments
 (0)