@hw-component/form 1.10.81 → 1.10.82
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.
- package/es/Select/TreeSelect.d.ts +5 -1
- package/es/Select/TreeSelect.js +33 -9
- package/es/index.d.ts +1 -0
- package/es/index.js +2 -1
- package/lib/Select/TreeSelect.d.ts +5 -1
- package/lib/Select/TreeSelect.js +32 -8
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -0
- package/package.json +1 -1
- package/src/components/Select/TreeSelect.tsx +42 -8
- package/src/components/index.tsx +3 -0
- package/src/pages/Select/index.tsx +4 -2
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { TreeSelectProps } from "antd/lib/tree-select";
|
|
2
2
|
import type { PromiseFnResult } from "../modal";
|
|
3
|
+
import React from "react";
|
|
3
4
|
export interface HTreeSelectProps extends TreeSelectProps {
|
|
4
5
|
request?: PromiseFnResult;
|
|
5
6
|
onlyCheckChild?: boolean;
|
|
7
|
+
addonBefore?: React.ReactNode;
|
|
8
|
+
addonAfter?: React.ReactNode;
|
|
9
|
+
className?: string;
|
|
6
10
|
}
|
|
7
|
-
declare const _default: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, ...props }: HTreeSelectProps) => JSX.Element;
|
|
11
|
+
declare const _default: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, addonBefore, style, addonAfter, className, ...props }: HTreeSelectProps) => JSX.Element;
|
|
8
12
|
export default _default;
|
package/es/Select/TreeSelect.js
CHANGED
|
@@ -3,11 +3,12 @@ import _asyncToGenerator from '@babel/runtime-corejs3/helpers/asyncToGenerator';
|
|
|
3
3
|
import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/objectWithoutProperties';
|
|
4
4
|
import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
|
|
5
5
|
import _regeneratorRuntime from '@babel/runtime-corejs3/regenerator';
|
|
6
|
-
import { jsx } from 'react/jsx-runtime';
|
|
6
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
7
7
|
import { TreeSelect } from 'antd';
|
|
8
8
|
import { useRequest } from 'ahooks';
|
|
9
|
+
import { useClassName } from '../hooks/index.js';
|
|
9
10
|
|
|
10
|
-
var _excluded = ["request", "onlyCheckChild", "multiple", "treeCheckable", "treeData", "fieldNames"];
|
|
11
|
+
var _excluded = ["request", "onlyCheckChild", "multiple", "treeCheckable", "treeData", "fieldNames", "addonBefore", "style", "addonAfter", "className"];
|
|
11
12
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
14
|
var _opMk = function opMk(_ref) {
|
|
@@ -41,7 +42,17 @@ var HTreeSelect = (function (_ref3) {
|
|
|
41
42
|
treeCheckable = _ref3.treeCheckable,
|
|
42
43
|
treeData = _ref3.treeData,
|
|
43
44
|
fieldNames = _ref3.fieldNames,
|
|
45
|
+
addonBefore = _ref3.addonBefore,
|
|
46
|
+
style = _ref3.style,
|
|
47
|
+
addonAfter = _ref3.addonAfter,
|
|
48
|
+
className = _ref3.className,
|
|
44
49
|
props = _objectWithoutProperties(_ref3, _excluded);
|
|
50
|
+
var boxClassName = useClassName("hw-select-box");
|
|
51
|
+
var addonBeforeClassName = useClassName("hw-group-addon-before");
|
|
52
|
+
var addonBeforeBoxClassName = useClassName("hw-select-box-addon-before");
|
|
53
|
+
var addonAfterClassName = useClassName("hw-group-addon-after");
|
|
54
|
+
var addonAfterBoxClassName = useClassName("hw-select-box-addon-after");
|
|
55
|
+
var addonClassname = useClassName(["hw-addon"]);
|
|
45
56
|
var _useRequest = useRequest(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
46
57
|
var options;
|
|
47
58
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
@@ -70,13 +81,26 @@ var HTreeSelect = (function (_ref3) {
|
|
|
70
81
|
}))),
|
|
71
82
|
loading = _useRequest.loading,
|
|
72
83
|
data = _useRequest.data;
|
|
73
|
-
return
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
84
|
+
return jsxs("div", {
|
|
85
|
+
className: "".concat(boxClassName, " ").concat(addonBefore ? addonBeforeBoxClassName : "", " ").concat(addonAfter ? addonAfterBoxClassName : "", " ").concat(className),
|
|
86
|
+
style: style,
|
|
87
|
+
children: [addonBefore && jsx("div", {
|
|
88
|
+
className: "".concat(addonClassname, " ").concat(addonBeforeClassName),
|
|
89
|
+
children: addonBefore
|
|
90
|
+
}), jsx(TreeSelect, _objectSpread({
|
|
91
|
+
treeData: data,
|
|
92
|
+
loading: loading,
|
|
93
|
+
style: {
|
|
94
|
+
width: "100%"
|
|
95
|
+
},
|
|
96
|
+
fieldNames: fieldNames,
|
|
97
|
+
treeCheckable: treeCheckable,
|
|
98
|
+
multiple: multiple
|
|
99
|
+
}, props)), addonAfter && jsx("div", {
|
|
100
|
+
className: "".concat(addonClassname, " ").concat(addonAfterClassName),
|
|
101
|
+
children: addonAfter
|
|
102
|
+
})]
|
|
103
|
+
});
|
|
80
104
|
});
|
|
81
105
|
|
|
82
106
|
export { HTreeSelect as default };
|
package/es/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export declare const HModalForm: import("react").FC<import("./DialogForm/modal")
|
|
|
28
28
|
export declare const HDrawerForm: import("react").FC<import("./DialogForm/modal").DialogFormProps<any, any>>;
|
|
29
29
|
export declare const HCascader: ({ request, options, fieldNames: propsFieldNames, ...props }: import("./Cascader").HCascaderProps) => JSX.Element;
|
|
30
30
|
export declare const HVerificationCodeInput: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
31
|
+
export declare const HTreeSelect: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, addonBefore, style, addonAfter, className, ...props }: import("./Select/TreeSelect").HTreeSelectProps) => JSX.Element;
|
|
31
32
|
export declare const HTrimInput: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
32
33
|
export declare const HTrimTextArea: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
33
34
|
export declare const HInputNumberGroup: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
package/es/index.js
CHANGED
|
@@ -33,11 +33,12 @@ var HModalForm = Index$1;
|
|
|
33
33
|
var HDrawerForm = Index$2;
|
|
34
34
|
var HCascader = componentConfig.cascader;
|
|
35
35
|
var HVerificationCodeInput = componentConfig.verificationCodeInput;
|
|
36
|
+
var HTreeSelect = componentConfig.treeSelect;
|
|
36
37
|
var HTrimInput = componentConfig.trimInput;
|
|
37
38
|
var HTrimTextArea = componentConfig.trimTextArea;
|
|
38
39
|
var HInputNumberGroup = componentConfig.inputNumberGroup.Component;
|
|
39
40
|
var HTagSelect = componentConfig.tagSelect;
|
|
40
41
|
var HTimeRangePicker = componentConfig.timeRangePicker.Component;
|
|
41
42
|
|
|
42
|
-
export { HButtonInput, HCascader, HCheckBox, HCheckboxGroup, HColorInput, HDatePicker, HDrawerForm, HInput, HInputNumber, HInputNumberGroup, HModalForm, HPageHandler, HRadioGroup, HRangePicker, HRichEditor, HSelect, HSelectInput, HSwitch, HTagSelect, HTextArea, HTimePicker, HTimeRangePicker, HTrimInput, HTrimTextArea, HUpload, HUrlUpload, HVerificationCodeInput };
|
|
43
|
+
export { HButtonInput, HCascader, HCheckBox, HCheckboxGroup, HColorInput, HDatePicker, HDrawerForm, HInput, HInputNumber, HInputNumberGroup, HModalForm, HPageHandler, HRadioGroup, HRangePicker, HRichEditor, HSelect, HSelectInput, HSwitch, HTagSelect, HTextArea, HTimePicker, HTimeRangePicker, HTreeSelect, HTrimInput, HTrimTextArea, HUpload, HUrlUpload, HVerificationCodeInput };
|
|
43
44
|
// powered by hdj
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { TreeSelectProps } from "antd/lib/tree-select";
|
|
2
2
|
import type { PromiseFnResult } from "../modal";
|
|
3
|
+
import React from "react";
|
|
3
4
|
export interface HTreeSelectProps extends TreeSelectProps {
|
|
4
5
|
request?: PromiseFnResult;
|
|
5
6
|
onlyCheckChild?: boolean;
|
|
7
|
+
addonBefore?: React.ReactNode;
|
|
8
|
+
addonAfter?: React.ReactNode;
|
|
9
|
+
className?: string;
|
|
6
10
|
}
|
|
7
|
-
declare const _default: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, ...props }: HTreeSelectProps) => JSX.Element;
|
|
11
|
+
declare const _default: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, addonBefore, style, addonAfter, className, ...props }: HTreeSelectProps) => JSX.Element;
|
|
8
12
|
export default _default;
|
package/lib/Select/TreeSelect.js
CHANGED
|
@@ -9,8 +9,9 @@ var _regeneratorRuntime = require('@babel/runtime-corejs3/regenerator');
|
|
|
9
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
10
10
|
var antd = require('antd');
|
|
11
11
|
var ahooks = require('ahooks');
|
|
12
|
+
var index = require('../hooks/index.js');
|
|
12
13
|
|
|
13
|
-
var _excluded = ["request", "onlyCheckChild", "multiple", "treeCheckable", "treeData", "fieldNames"];
|
|
14
|
+
var _excluded = ["request", "onlyCheckChild", "multiple", "treeCheckable", "treeData", "fieldNames", "addonBefore", "style", "addonAfter", "className"];
|
|
14
15
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
16
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
17
|
var _opMk = function opMk(_ref) {
|
|
@@ -44,7 +45,17 @@ var HTreeSelect = (function (_ref3) {
|
|
|
44
45
|
treeCheckable = _ref3.treeCheckable,
|
|
45
46
|
treeData = _ref3.treeData,
|
|
46
47
|
fieldNames = _ref3.fieldNames,
|
|
48
|
+
addonBefore = _ref3.addonBefore,
|
|
49
|
+
style = _ref3.style,
|
|
50
|
+
addonAfter = _ref3.addonAfter,
|
|
51
|
+
className = _ref3.className,
|
|
47
52
|
props = _objectWithoutProperties(_ref3, _excluded);
|
|
53
|
+
var boxClassName = index.useClassName("hw-select-box");
|
|
54
|
+
var addonBeforeClassName = index.useClassName("hw-group-addon-before");
|
|
55
|
+
var addonBeforeBoxClassName = index.useClassName("hw-select-box-addon-before");
|
|
56
|
+
var addonAfterClassName = index.useClassName("hw-group-addon-after");
|
|
57
|
+
var addonAfterBoxClassName = index.useClassName("hw-select-box-addon-after");
|
|
58
|
+
var addonClassname = index.useClassName(["hw-addon"]);
|
|
48
59
|
var _useRequest = ahooks.useRequest(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
49
60
|
var options;
|
|
50
61
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
@@ -73,13 +84,26 @@ var HTreeSelect = (function (_ref3) {
|
|
|
73
84
|
}))),
|
|
74
85
|
loading = _useRequest.loading,
|
|
75
86
|
data = _useRequest.data;
|
|
76
|
-
return jsxRuntime.
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
87
|
+
return jsxRuntime.jsxs("div", {
|
|
88
|
+
className: "".concat(boxClassName, " ").concat(addonBefore ? addonBeforeBoxClassName : "", " ").concat(addonAfter ? addonAfterBoxClassName : "", " ").concat(className),
|
|
89
|
+
style: style,
|
|
90
|
+
children: [addonBefore && jsxRuntime.jsx("div", {
|
|
91
|
+
className: "".concat(addonClassname, " ").concat(addonBeforeClassName),
|
|
92
|
+
children: addonBefore
|
|
93
|
+
}), jsxRuntime.jsx(antd.TreeSelect, _objectSpread({
|
|
94
|
+
treeData: data,
|
|
95
|
+
loading: loading,
|
|
96
|
+
style: {
|
|
97
|
+
width: "100%"
|
|
98
|
+
},
|
|
99
|
+
fieldNames: fieldNames,
|
|
100
|
+
treeCheckable: treeCheckable,
|
|
101
|
+
multiple: multiple
|
|
102
|
+
}, props)), addonAfter && jsxRuntime.jsx("div", {
|
|
103
|
+
className: "".concat(addonClassname, " ").concat(addonAfterClassName),
|
|
104
|
+
children: addonAfter
|
|
105
|
+
})]
|
|
106
|
+
});
|
|
83
107
|
});
|
|
84
108
|
|
|
85
109
|
exports.default = HTreeSelect;
|
package/lib/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export declare const HModalForm: import("react").FC<import("./DialogForm/modal")
|
|
|
28
28
|
export declare const HDrawerForm: import("react").FC<import("./DialogForm/modal").DialogFormProps<any, any>>;
|
|
29
29
|
export declare const HCascader: ({ request, options, fieldNames: propsFieldNames, ...props }: import("./Cascader").HCascaderProps) => JSX.Element;
|
|
30
30
|
export declare const HVerificationCodeInput: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
31
|
+
export declare const HTreeSelect: ({ request, onlyCheckChild, multiple, treeCheckable, treeData, fieldNames, addonBefore, style, addonAfter, className, ...props }: import("./Select/TreeSelect").HTreeSelectProps) => JSX.Element;
|
|
31
32
|
export declare const HTrimInput: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
32
33
|
export declare const HTrimTextArea: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
|
33
34
|
export declare const HInputNumberGroup: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
|
package/lib/index.js
CHANGED
|
@@ -34,6 +34,7 @@ var HModalForm = ModalForm.default;
|
|
|
34
34
|
var HDrawerForm = index$3.default;
|
|
35
35
|
var HCascader = config.default.cascader;
|
|
36
36
|
var HVerificationCodeInput = config.default.verificationCodeInput;
|
|
37
|
+
var HTreeSelect = config.default.treeSelect;
|
|
37
38
|
var HTrimInput = config.default.trimInput;
|
|
38
39
|
var HTrimTextArea = config.default.trimTextArea;
|
|
39
40
|
var HInputNumberGroup = config.default.inputNumberGroup.Component;
|
|
@@ -69,6 +70,7 @@ exports.HTagSelect = HTagSelect;
|
|
|
69
70
|
exports.HTextArea = HTextArea;
|
|
70
71
|
exports.HTimePicker = HTimePicker;
|
|
71
72
|
exports.HTimeRangePicker = HTimeRangePicker;
|
|
73
|
+
exports.HTreeSelect = HTreeSelect;
|
|
72
74
|
exports.HTrimInput = HTrimInput;
|
|
73
75
|
exports.HTrimTextArea = HTrimTextArea;
|
|
74
76
|
exports.HUpload = HUpload;
|
package/package.json
CHANGED
|
@@ -2,9 +2,14 @@ import { TreeSelect } from "antd";
|
|
|
2
2
|
import type { TreeSelectProps } from "antd/lib/tree-select";
|
|
3
3
|
import type { PromiseFnResult } from "../modal";
|
|
4
4
|
import { useRequest } from "ahooks";
|
|
5
|
+
import React from "react";
|
|
6
|
+
import {useClassName} from "@/components/hooks";
|
|
5
7
|
export interface HTreeSelectProps extends TreeSelectProps {
|
|
6
8
|
request?: PromiseFnResult;
|
|
7
9
|
onlyCheckChild?: boolean;
|
|
10
|
+
addonBefore?:React.ReactNode;
|
|
11
|
+
addonAfter?:React.ReactNode;
|
|
12
|
+
className?: string;
|
|
8
13
|
}
|
|
9
14
|
interface OpMkParamsModal {
|
|
10
15
|
options?: any[];
|
|
@@ -40,8 +45,19 @@ export default ({
|
|
|
40
45
|
treeCheckable,
|
|
41
46
|
treeData,
|
|
42
47
|
fieldNames,
|
|
48
|
+
addonBefore,
|
|
49
|
+
style,
|
|
50
|
+
addonAfter,
|
|
51
|
+
className,
|
|
43
52
|
...props
|
|
44
53
|
}: HTreeSelectProps) => {
|
|
54
|
+
const boxClassName = useClassName("hw-select-box");
|
|
55
|
+
const addonBeforeClassName = useClassName("hw-group-addon-before");
|
|
56
|
+
const addonBeforeBoxClassName = useClassName("hw-select-box-addon-before");
|
|
57
|
+
const addonAfterClassName = useClassName("hw-group-addon-after");
|
|
58
|
+
const addonAfterBoxClassName = useClassName("hw-select-box-addon-after");
|
|
59
|
+
const addonClassname = useClassName(["hw-addon"]);
|
|
60
|
+
|
|
45
61
|
const { loading, data } = useRequest(async () => {
|
|
46
62
|
let options = treeData;
|
|
47
63
|
if (request) {
|
|
@@ -54,13 +70,31 @@ export default ({
|
|
|
54
70
|
});
|
|
55
71
|
});
|
|
56
72
|
return (
|
|
57
|
-
<
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
{
|
|
64
|
-
|
|
73
|
+
<div
|
|
74
|
+
className={`${boxClassName} ${
|
|
75
|
+
addonBefore ? addonBeforeBoxClassName : ""
|
|
76
|
+
} ${addonAfter ? addonAfterBoxClassName : ""} ${className}`}
|
|
77
|
+
style={style}
|
|
78
|
+
>
|
|
79
|
+
{addonBefore && (
|
|
80
|
+
<div className={`${addonClassname} ${addonBeforeClassName}`}>
|
|
81
|
+
{addonBefore}
|
|
82
|
+
</div>
|
|
83
|
+
)}
|
|
84
|
+
<TreeSelect
|
|
85
|
+
treeData={data}
|
|
86
|
+
loading={loading}
|
|
87
|
+
style={{width:"100%"}}
|
|
88
|
+
fieldNames={fieldNames}
|
|
89
|
+
treeCheckable={treeCheckable}
|
|
90
|
+
multiple={multiple}
|
|
91
|
+
{...props}
|
|
92
|
+
/>
|
|
93
|
+
{addonAfter && (
|
|
94
|
+
<div className={`${addonClassname} ${addonAfterClassName}`}>
|
|
95
|
+
{addonAfter}
|
|
96
|
+
</div>
|
|
97
|
+
)}
|
|
98
|
+
</div>
|
|
65
99
|
);
|
|
66
100
|
};
|
package/src/components/index.tsx
CHANGED
|
@@ -36,6 +36,9 @@ export const HCascader = FormConfig.cascader;
|
|
|
36
36
|
// @ts-ignore
|
|
37
37
|
export const HVerificationCodeInput = FormConfig.verificationCodeInput;
|
|
38
38
|
|
|
39
|
+
export const HTreeSelect = FormConfig.treeSelect;
|
|
40
|
+
|
|
41
|
+
|
|
39
42
|
export const HTrimInput = FormConfig.trimInput;
|
|
40
43
|
|
|
41
44
|
export const HTrimTextArea = FormConfig.trimTextArea;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { HSelect, HTagSelect } from "../../components";
|
|
1
|
+
import { HSelect, HTagSelect,HTreeSelect } from "../../components";
|
|
2
2
|
import { Form, Space } from "antd";
|
|
3
3
|
import { useEffect, useState } from "react";
|
|
4
|
+
|
|
4
5
|
export default () => {
|
|
5
6
|
const [selectVal, setSelectVal] = useState([{ name: "11", id: -100 }]);
|
|
6
7
|
const [op, setOp] = useState([{ label: "1", value: 1 }]);
|
|
@@ -8,7 +9,8 @@ export default () => {
|
|
|
8
9
|
const [tagVal, setTagVal] = useState([]);
|
|
9
10
|
const [visible, setVisible] = useState(true);
|
|
10
11
|
return (
|
|
11
|
-
<Space size={"large"} direction={"vertical"} style={{ width: "100%" }}>
|
|
12
|
+
<Space size={"large"} direction={"vertical"} style={{ width: "100%" ,padding:20}} >
|
|
13
|
+
<HTreeSelect addonBefore="你好" style={{width:1000}} addonAfter="我很好"/>
|
|
12
14
|
<HSelect
|
|
13
15
|
placeholder="分页"
|
|
14
16
|
serviceSearch
|