@hw-component/form 1.9.86 → 1.9.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/.eslintcache +1 -1
  2. package/es/Form/config.d.ts +2 -1
  3. package/es/Form/config.js +3 -1
  4. package/es/Select/TagSelect/Content.d.ts +7 -0
  5. package/es/Select/TagSelect/Content.js +90 -0
  6. package/es/Select/TagSelect/hooks.d.ts +14 -0
  7. package/es/Select/TagSelect/hooks.js +122 -0
  8. package/es/Select/TagSelect/index.d.ts +3 -0
  9. package/es/Select/TagSelect/index.js +110 -0
  10. package/es/Select/index.js +0 -1
  11. package/es/Select/modal.d.ts +8 -1
  12. package/es/index.css +15 -0
  13. package/es/index.d.ts +2 -1
  14. package/es/index.js +2 -1
  15. package/lib/Form/config.d.ts +2 -1
  16. package/lib/Form/config.js +3 -1
  17. package/lib/Select/TagSelect/Content.d.ts +7 -0
  18. package/lib/Select/TagSelect/Content.js +93 -0
  19. package/lib/Select/TagSelect/hooks.d.ts +14 -0
  20. package/lib/Select/TagSelect/hooks.js +125 -0
  21. package/lib/Select/TagSelect/index.d.ts +3 -0
  22. package/lib/Select/TagSelect/index.js +113 -0
  23. package/lib/Select/index.js +0 -1
  24. package/lib/Select/modal.d.ts +8 -1
  25. package/lib/index.css +15 -0
  26. package/lib/index.d.ts +2 -1
  27. package/lib/index.js +2 -0
  28. package/package.json +1 -1
  29. package/src/components/Form/config.ts +2 -1
  30. package/src/components/Form/index.less +6 -0
  31. package/src/components/Select/TagSelect/Content.tsx +50 -0
  32. package/src/components/Select/TagSelect/hooks.ts +102 -0
  33. package/src/components/Select/TagSelect/index.tsx +79 -0
  34. package/src/components/Select/index.less +13 -0
  35. package/src/components/Select/index.tsx +0 -1
  36. package/src/components/Select/modal.ts +9 -1
  37. package/src/components/index.tsx +2 -0
  38. package/src/pages/Form/index.tsx +149 -132
  39. package/src/pages/Select/index.tsx +32 -5
@@ -76,144 +76,161 @@ export default () => {
76
76
  <HForm
77
77
  configData={[
78
78
  {
79
- label: "文字",
79
+ label: "tagSelect",
80
+ type:"tagSelect",
80
81
  name: "wz",
82
+ dispatch: {
83
+ fnKey: 'reload',
84
+ dependencies: ['wz1'],
85
+ },
86
+ itemProps:{
87
+ request:()=>{
88
+ return new Promise((resolve, reject)=>{
89
+ setTimeout(()=>{
90
+ resolve([{
91
+ value:"你好",
92
+ key:"1"
93
+ }])
94
+ },3000)
95
+ })
96
+ }
97
+ }
81
98
  },
82
99
  {
83
100
  label: "文字1",
84
101
  name: "wz1",
85
102
  },
86
- {
87
- label: "inputSelect",
88
- type: "richEditor",
89
- name: "richEditor",
90
- rules: [
91
- {
92
- validator: (rule, value, callback) => {
93
- console.log(value);
94
- return Promise.resolve();
95
- },
96
- },
97
- ],
98
- },
99
- {
100
- label: "富文本",
101
- type: "timePicker",
102
- name: "textArea",
103
- itemProps: {
104
- showCount: true,
105
- maxLength: 100,
106
- },
107
- rules: [
108
- {
109
- validator: (rule, value, callback) => {
110
- console.log(value);
111
- return Promise.resolve();
112
- },
113
- },
114
- ],
115
- },
116
- {
117
- label: "运营商账号",
118
- name: "mobile",
119
- type: "buttonInput",
120
- flexBox: true,
121
- itemProps: {
122
- children: "修改手机号",
123
- disabled: true,
124
- buttonProps: {
125
- type: "primary",
126
- ghost: true,
127
- style: {
128
- marginLeft: 8,
129
- },
130
- onClick: () => {},
131
- },
132
- },
133
- },
134
- {
135
- label: "验证码",
136
- name: "newCode",
137
- type: "verificationCodeInput",
138
- itemProps: {
139
- request: async ({ newMobile }) => {
140
- return Promise.resolve();
141
- },
142
- buttonProps: {
143
- ghost: true,
144
- },
145
- },
146
- },
147
- {
148
- label: "你好",
149
- noStyle: true,
150
- render: () => {
151
- return (
152
- <div
153
- style={{
154
- width: "100%",
155
- backgroundColor: "red",
156
- height: "100%",
157
- }}
158
- >
159
- <div style={{ height: 200 }} />
160
- </div>
161
- );
162
- },
163
- },
164
- {
165
- label: "你好",
166
- noStyle: true,
167
- render: () => {
168
- return (
169
- <div
170
- style={{
171
- width: "100%",
172
- backgroundColor: "black",
173
- height: "100%",
174
- }}
175
- />
176
- );
177
- },
178
- },
179
- {
180
- label: "数字输入框",
181
- name: "yyy",
182
- type: "inputNumberGroup",
183
- rules: [{ required: true }],
184
- itemProps: {
185
- inputNumberProps: {
186
- precision: 2,
187
- },
188
- },
189
- },
190
- {
191
- label: "文字",
192
- type: "text",
193
- name: "text",
194
- render: () => {
195
- return <div>fff</div>;
196
- },
197
- itemProps: {
198
- type: "danger",
199
- addonBefore: (
200
- <div style={{ height: 100, backgroundColor: "red" }}>
201
- nihao
202
- </div>
203
- ),
204
- addonAfter: (
205
- <div style={{ height: 200, backgroundColor: "red" }}>
206
- wohao
207
- </div>
208
- ),
209
- initValueProvider: (...data) => {
210
- console.log("initValueProvider");
211
- return {
212
- text: "你好",
213
- };
214
- },
215
- },
216
- },
103
+ // {
104
+ // label: "inputSelect",
105
+ // type: "richEditor",
106
+ // name: "richEditor",
107
+ // rules: [
108
+ // {
109
+ // validator: (rule, value, callback) => {
110
+ // console.log(value);
111
+ // return Promise.resolve();
112
+ // },
113
+ // },
114
+ // ],
115
+ // },
116
+ // {
117
+ // label: "富文本",
118
+ // type: "timePicker",
119
+ // name: "textArea",
120
+ // itemProps: {
121
+ // showCount: true,
122
+ // maxLength: 100,
123
+ // },
124
+ // rules: [
125
+ // {
126
+ // validator: (rule, value, callback) => {
127
+ // console.log(value);
128
+ // return Promise.resolve();
129
+ // },
130
+ // },
131
+ // ],
132
+ // },
133
+ // {
134
+ // label: "运营商账号",
135
+ // name: "mobile",
136
+ // type: "buttonInput",
137
+ // flexBox: true,
138
+ // itemProps: {
139
+ // children: "修改手机号",
140
+ // disabled: true,
141
+ // buttonProps: {
142
+ // type: "primary",
143
+ // ghost: true,
144
+ // style: {
145
+ // marginLeft: 8,
146
+ // },
147
+ // onClick: () => {},
148
+ // },
149
+ // },
150
+ // },
151
+ // {
152
+ // label: "验证码",
153
+ // name: "newCode",
154
+ // type: "verificationCodeInput",
155
+ // itemProps: {
156
+ // request: async ({ newMobile }) => {
157
+ // return Promise.resolve();
158
+ // },
159
+ // buttonProps: {
160
+ // ghost: true,
161
+ // },
162
+ // },
163
+ // },
164
+ // {
165
+ // label: "你好",
166
+ // noStyle: true,
167
+ // render: () => {
168
+ // return (
169
+ // <div
170
+ // style={{
171
+ // width: "100%",
172
+ // backgroundColor: "red",
173
+ // height: "100%",
174
+ // }}
175
+ // >
176
+ // <div style={{ height: 200 }} />
177
+ // </div>
178
+ // );
179
+ // },
180
+ // },
181
+ // {
182
+ // label: "你好",
183
+ // noStyle: true,
184
+ // render: () => {
185
+ // return (
186
+ // <div
187
+ // style={{
188
+ // width: "100%",
189
+ // backgroundColor: "black",
190
+ // height: "100%",
191
+ // }}
192
+ // />
193
+ // );
194
+ // },
195
+ // },
196
+ // {
197
+ // label: "数字输入框",
198
+ // name: "yyy",
199
+ // type: "inputNumberGroup",
200
+ // rules: [{ required: true }],
201
+ // itemProps: {
202
+ // inputNumberProps: {
203
+ // precision: 2,
204
+ // },
205
+ // },
206
+ // },
207
+ // {
208
+ // label: "文字",
209
+ // type: "text",
210
+ // name: "text",
211
+ // render: () => {
212
+ // return <div>fff</div>;
213
+ // },
214
+ // itemProps: {
215
+ // type: "danger",
216
+ // addonBefore: (
217
+ // <div style={{ height: 100, backgroundColor: "red" }}>
218
+ // nihao
219
+ // </div>
220
+ // ),
221
+ // addonAfter: (
222
+ // <div style={{ height: 200, backgroundColor: "red" }}>
223
+ // wohao
224
+ // </div>
225
+ // ),
226
+ // initValueProvider: (...data) => {
227
+ // console.log("initValueProvider");
228
+ // return {
229
+ // text: "你好",
230
+ // };
231
+ // },
232
+ // },
233
+ // },
217
234
  ]}
218
235
  dismissOnPressEnter={false}
219
236
  labelWidth={88}
@@ -1,11 +1,12 @@
1
- import { HSelect } from "../../components";
1
+ import { HSelect ,HTagSelect} from "../../components";
2
2
  import { Form, Space } from "antd";
3
3
  import { useEffect, useState } from "react";
4
4
  export default () => {
5
5
  const [selectVal, setSelectVal] = useState([{ name: "11", id: -100 }]);
6
6
  const [op, setOp] = useState([{ label: "1", value: 1 }]);
7
7
  const [val, setVal] = useState([2, 3]);
8
-
8
+ const [tagVal, setTagVal] = useState([]);
9
+ const [visible,setVisible]=useState(true);
9
10
  return (
10
11
  <Space size={"large"} direction={"vertical"} style={{ width: "100%" }}>
11
12
  <HSelect
@@ -39,13 +40,39 @@ export default () => {
39
40
  />
40
41
  <HSelect
41
42
  value={val}
42
- onChange={(v) => {
43
- console.log(v);
43
+ onChange={(v,opts) => {
44
+ console.log(v,opts)
44
45
  setVal(v);
45
46
  }}
46
47
  mode="multiple"
47
- options={op}
48
48
  />
49
+ <div onClick={()=>{
50
+ setVisible(false)
51
+ }}>
52
+ 关闭
53
+ </div>
54
+ <HTagSelect
55
+ value={tagVal}
56
+ visible={visible}
57
+ onVisibleChange={(v)=>{
58
+ console.log(v)
59
+ }}
60
+ request={()=>{
61
+ return new Promise((resolve, reject)=>{
62
+ setTimeout(()=>{
63
+ resolve([])
64
+ },3000)
65
+ })
66
+ }}
67
+ onChange={(value, opts)=>{
68
+ setTagVal(value);
69
+ console.log(value,opts)
70
+ }}
71
+ fieldNames={{
72
+ label:"value",
73
+ value:"key"
74
+ }}
75
+ />
49
76
  <div
50
77
  onClick={() => {
51
78
  setOp([{ label: "2", value: 2 }]);