@ticatec/uniface-element 5.0.0 → 5.0.2
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/README.md +29 -54
- package/README_CN.md +37 -57
- package/dist/app_layout/ClassicLayout.svelte +8 -40
- package/dist/app_layout/ColumnsLayout.svelte +3 -3
- package/dist/app_layout/HeaderLayout.svelte +4 -20
- package/dist/app_layout/RowsLayout.svelte +3 -3
- package/dist/app_layout/SidebarLayout.svelte +4 -20
- package/dist/base-calendar/CalendarBase.svelte +29 -6
- package/dist/base-calendar/CalendarBase.svelte.d.ts +4 -0
- package/dist/base-calendar/MonthPickupPanel.svelte +19 -6
- package/dist/base-calendar/MonthPickupPanel.svelte.d.ts +1 -1
- package/dist/base-calendar/MonthlyCalendar.svelte +18 -2
- package/dist/base-calendar/YearPickupPanel.svelte +24 -6
- package/dist/base-calendar/YearPickupPanel.svelte.d.ts +1 -1
- package/dist/composite/pagination_panel/PaginationPanel.svelte +2 -0
- package/dist/composite/transfer/Transfer.svelte +12 -6
- package/dist/data_display/accordion/Accordion.svelte +1 -4
- package/dist/data_display/card/CommonCardActionBar.svelte +31 -37
- package/dist/data_display/concise_data_table/Column.d.ts +6 -0
- package/dist/data_display/concise_data_table/ConciseListTable.svelte +4 -3
- package/dist/data_display/concise_data_table/DataCell.svelte +3 -3
- package/dist/data_display/list_box/ListBox.svelte +96 -23
- package/dist/data_display/list_box/ListBox.svelte.d.ts +4 -0
- package/dist/data_display/tree_view/TreeNodeView.svelte +25 -4
- package/dist/data_table/DataTable.svelte +5 -5
- package/dist/data_table/DataTable.svelte.d.ts +36 -16
- package/dist/data_table/lib/ActionsColumn.d.ts +2 -2
- package/dist/data_table/lib/DataColumn.d.ts +7 -1
- package/dist/data_table/lib/RowAction.d.ts +5 -5
- package/dist/data_table/lib/clickOutSide.js +6 -5
- package/dist/data_table/parts/FixedHeaderPanel.svelte +18 -3
- package/dist/data_table/parts/FixedRow.svelte +10 -1
- package/dist/data_table/parts/HrefCell.svelte +1 -1
- package/dist/data_table/parts/TableHeaderPanel.svelte +18 -2
- package/dist/data_table/parts/TextCell.svelte +2 -2
- package/dist/form/attachment_files/AttachmentEditor.svelte +20 -15
- package/dist/form/attachment_files/FileRender.svelte +1 -1
- package/dist/form/attachment_files/FileUploadBar.svelte +5 -2
- package/dist/form/attachment_files/FileUploadPanel.svelte +11 -73
- package/dist/form/cascade_options_select/CascadeOptionSelect.svelte +10 -2
- package/dist/form/cascade_options_select/OptionsBox.svelte +48 -2
- package/dist/form/checkbox/CheckBox.svelte +2 -7
- package/dist/form/color_picker/ColorPicker.svelte +150 -35
- package/dist/form/color_picker/ColorPicker.svelte.d.ts +7 -25
- package/dist/form/color_picker/ColorPickerPanel.svelte +23 -20
- package/dist/form/color_picker/ColorPickerPanel.svelte.d.ts +5 -18
- package/dist/form/color_picker/README.md +14 -7
- package/dist/form/color_picker/README_CN.md +14 -7
- package/dist/form/common_editor/CommonEditor.svelte +18 -4
- package/dist/form/common_editor/CommonPicker.svelte +14 -10
- package/dist/form/common_editor/CommonPopupEditor.svelte +8 -1
- package/dist/form/common_range_editor/CommonRangeEditor.svelte +11 -2
- package/dist/form/date_picker/DatePicker.svelte +1 -1
- package/dist/form/date_picker/DateTimePicker.svelte +1 -1
- package/dist/form/date_picker/ScrollBar.svelte +20 -12
- package/dist/form/date_picker/ScrollBar.svelte.d.ts +4 -18
- package/dist/form/date_range/DateRangeEditor.svelte +11 -3
- package/dist/form/group_box/group-check-box/GroupCheckBox.svelte +6 -1
- package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte +6 -1
- package/dist/form/image-files/ImageFilesField.svelte +51 -7
- package/dist/form/image-files/ImagePreview.svelte +23 -9
- package/dist/form/image-files/ImageRender.svelte +69 -11
- package/dist/form/input_options_select/InputOptionsSelect.svelte +10 -2
- package/dist/form/lookup_editor/LookupEditor.svelte +9 -2
- package/dist/form/memo_editor/MemoEditor.svelte +2 -2
- package/dist/form/number_editor/NumberEditor.svelte +2 -2
- package/dist/form/options_multi_select/OptionsMultiSelect.svelte +20 -12
- package/dist/form/options_select/OptionsSelect.svelte +15 -6
- package/dist/form/options_select/OptionsSelect.svelte.d.ts +39 -17
- package/dist/form/prompts_text_editor/PromptsTextEditor.svelte +10 -2
- package/dist/form/radio_button/RadioButton.svelte +2 -8
- package/dist/form/switch/Switch.svelte +4 -4
- package/dist/form/text_editor/TextEditor.svelte +2 -2
- package/dist/form/unit-number-editor/UnitNumberEditor.svelte +10 -2
- package/dist/general/button/Button.svelte +5 -0
- package/dist/general/button/Button.svelte.d.ts +1 -0
- package/dist/general/button/IconButton.svelte +3 -1
- package/dist/general/button/IconButton.svelte.d.ts +1 -0
- package/dist/general/button/TextButton.svelte +3 -0
- package/dist/general/button/TextButton.svelte.d.ts +1 -0
- package/dist/general/icon/Icon.svelte +18 -1
- package/dist/general/split/Split.svelte +24 -4
- package/dist/general/tag/Tag.svelte +9 -1
- package/dist/navigation/nav_menu/MenuItem.d.ts +4 -2
- package/dist/navigation/nav_menu/NavigatorMenu.svelte +157 -34
- package/dist/navigation/nav_menu/NavigatorMenu.svelte.d.ts +2 -3
- package/dist/navigation/nav_menu/NavigatorMenuItem.svelte +25 -13
- package/dist/navigation/nav_menu/NavigatorMenuItem.svelte.d.ts +3 -3
- package/dist/navigation/navigator/Navigator.svelte +17 -17
- package/dist/navigation/page-stack/PageStack.svelte +160 -0
- package/dist/navigation/page-stack/PageStack.svelte.d.ts +24 -0
- package/dist/navigation/page-stack/PageStackContext.d.ts +25 -0
- package/dist/navigation/page-stack/PageStackContext.js +12 -0
- package/dist/navigation/page-stack/PageStackFrame.svelte +24 -0
- package/dist/navigation/page-stack/PageStackFrame.svelte.d.ts +11 -0
- package/dist/navigation/page-stack/README.md +154 -0
- package/dist/navigation/page-stack/README_CN.md +154 -0
- package/dist/navigation/page-stack/index.d.ts +6 -0
- package/dist/navigation/page-stack/index.js +4 -0
- package/dist/navigation/pagination/Pagination.svelte +114 -14
- package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte +1 -5
- package/dist/navigation/tabs/Tabs.svelte +42 -10
- package/dist/navigation/tabs/Tabs.svelte.d.ts +2 -2
- package/dist/overlay/common/FloatingPanel.svelte +3 -17
- package/dist/overlay/common/FullscreenOverlay.svelte +27 -3
- package/dist/overlay/common/FullscreenOverlay.svelte.d.ts +6 -27
- package/dist/overlay/common/ModalPopover.svelte +18 -2
- package/dist/overlay/common/Popover.svelte +61 -57
- package/dist/overlay/common/Popover.svelte.d.ts +1 -5
- package/dist/overlay/common/escapeClose.d.ts +28 -0
- package/dist/overlay/common/escapeClose.js +47 -0
- package/dist/overlay/common/focusTrap.d.ts +8 -0
- package/dist/overlay/common/focusTrap.js +83 -0
- package/dist/overlay/common/mountSingleton.d.ts +27 -0
- package/dist/overlay/common/mountSingleton.js +45 -0
- package/dist/overlay/common/outsideClick.d.ts +28 -0
- package/dist/overlay/common/outsideClick.js +20 -0
- package/dist/overlay/common/scrollLock.d.ts +8 -0
- package/dist/overlay/common/scrollLock.js +49 -0
- package/dist/overlay/common/uniface-utils.js +0 -1
- package/dist/overlay/context-menu/ContextMenu.svelte.js +2 -15
- package/dist/overlay/context-menu/ContextMenuPanel.svelte +27 -3
- package/dist/overlay/dialog/Dialog.svelte +48 -32
- package/dist/overlay/dialog/DialogManager.svelte.js +7 -9
- package/dist/overlay/dialog/DialogWrapper.svelte +5 -2
- package/dist/overlay/drawer/Drawer.svelte +30 -3
- package/dist/overlay/indicator/Indicator.svelte.js +2 -15
- package/dist/overlay/indicator/IndicatorPanel.svelte +4 -1
- package/dist/overlay/message-box/MessageBox.svelte.js +2 -15
- package/dist/overlay/message-box/MessageBoxPanel.svelte +19 -3
- package/dist/overlay/toast/Toast.svelte.js +2 -15
- package/dist/overlay/toast/ToastPanel.svelte +1 -1
- package/dist/overlay/tooltip/Tooltip.svelte +1 -1
- package/dist/ticatec-uniface-web.css +128 -13
- package/dist/types.d.ts +4 -3
- package/dist/utils/prefixFilter.d.ts +3 -3
- package/dist/utils/prefixFilter.js +3 -5
- package/docs/components/README.md +133 -0
- package/docs/components/accordion/README.md +60 -0
- package/docs/components/accordion/example.svelte +7 -0
- package/docs/components/action-bar/README.md +114 -0
- package/docs/components/action-bar/example.svelte +7 -0
- package/docs/components/app-top-bar/README.md +60 -0
- package/docs/components/app-top-bar/example.svelte +9 -0
- package/docs/components/attachment-files/README.md +332 -0
- package/docs/components/attachment-files/example.svelte +16 -0
- package/docs/components/box/README.md +63 -0
- package/docs/components/box/example.svelte +10 -0
- package/docs/components/breadcrumbs/README.md +86 -0
- package/docs/components/breadcrumbs/example.svelte +11 -0
- package/docs/components/button/README.md +103 -0
- package/docs/components/button/example.svelte +10 -0
- package/docs/components/card/README.md +113 -0
- package/docs/components/card/example.svelte +10 -0
- package/docs/components/cascade-options-select/README.md +162 -0
- package/docs/components/cascade-options-select/example.svelte +18 -0
- package/docs/components/checkbox/README.md +103 -0
- package/docs/components/checkbox/example.svelte +15 -0
- package/docs/components/classic-layout/README.md +76 -0
- package/docs/components/classic-layout/example.svelte +16 -0
- package/docs/components/color-picker/README.md +132 -0
- package/docs/components/color-picker/example.svelte +16 -0
- package/docs/components/columns-layout/README.md +70 -0
- package/docs/components/columns-layout/example.svelte +12 -0
- package/docs/components/common-dialog/README.md +109 -0
- package/docs/components/common-dialog/example.svelte +12 -0
- package/docs/components/concise-data-table/README.md +307 -0
- package/docs/components/concise-data-table/example.svelte +16 -0
- package/docs/components/context-menu/README.md +99 -0
- package/docs/components/context-menu/example.svelte +10 -0
- package/docs/components/criteria-field/README.md +69 -0
- package/docs/components/criteria-field/example.svelte +9 -0
- package/docs/components/data-table/README.md +365 -0
- package/docs/components/data-table/example.svelte +23 -0
- package/docs/components/date-picker/README.md +136 -0
- package/docs/components/date-picker/example.svelte +16 -0
- package/docs/components/date-range/README.md +122 -0
- package/docs/components/date-range/example.svelte +15 -0
- package/docs/components/date-time-picker/README.md +142 -0
- package/docs/components/date-time-picker/example.svelte +16 -0
- package/docs/components/dialog/README.md +174 -0
- package/docs/components/dialog/example.svelte +13 -0
- package/docs/components/dialog-board/README.md +41 -0
- package/docs/components/dialog-board/example.svelte +5 -0
- package/docs/components/drawer/README.md +70 -0
- package/docs/components/drawer/example.svelte +12 -0
- package/docs/components/flex-form/README.md +55 -0
- package/docs/components/flex-form/example.svelte +7 -0
- package/docs/components/flex-row-form/README.md +56 -0
- package/docs/components/flex-row-form/example.svelte +7 -0
- package/docs/components/form-field/README.md +84 -0
- package/docs/components/form-field/example.svelte +10 -0
- package/docs/components/full-screen-overlay/README.md +66 -0
- package/docs/components/full-screen-overlay/example.svelte +11 -0
- package/docs/components/grid-form/README.md +75 -0
- package/docs/components/grid-form/example.svelte +9 -0
- package/docs/components/group-check-box/README.md +147 -0
- package/docs/components/group-check-box/example.svelte +21 -0
- package/docs/components/group-radio-box/README.md +144 -0
- package/docs/components/group-radio-box/example.svelte +21 -0
- package/docs/components/header-layout/README.md +65 -0
- package/docs/components/header-layout/example.svelte +12 -0
- package/docs/components/icon/README.md +87 -0
- package/docs/components/icon/example.svelte +9 -0
- package/docs/components/icon-button/README.md +91 -0
- package/docs/components/icon-button/example.svelte +10 -0
- package/docs/components/image-files/README.md +174 -0
- package/docs/components/image-files/example.svelte +19 -0
- package/docs/components/indicator/README.md +53 -0
- package/docs/components/indicator/example.svelte +14 -0
- package/docs/components/input-options-select/README.md +163 -0
- package/docs/components/input-options-select/example.svelte +16 -0
- package/docs/components/list-box/ListItem.svelte +14 -0
- package/docs/components/list-box/README.md +221 -0
- package/docs/components/list-box/example.svelte +61 -0
- package/docs/components/lookup-editor/README.md +137 -0
- package/docs/components/lookup-editor/example.svelte +16 -0
- package/docs/components/memo-editor/README.md +143 -0
- package/docs/components/memo-editor/example.svelte +16 -0
- package/docs/components/message-box/README.md +68 -0
- package/docs/components/message-box/example.svelte +10 -0
- package/docs/components/navigator/README.md +75 -0
- package/docs/components/navigator/example.svelte +13 -0
- package/docs/components/navigator-menu/README.md +113 -0
- package/docs/components/navigator-menu/example.svelte +10 -0
- package/docs/components/number-editor/README.md +144 -0
- package/docs/components/number-editor/example.svelte +16 -0
- package/docs/components/number-range/README.md +116 -0
- package/docs/components/number-range/example.svelte +15 -0
- package/docs/components/options-multi-select/README.md +161 -0
- package/docs/components/options-multi-select/example.svelte +20 -0
- package/docs/components/options-select/README.md +160 -0
- package/docs/components/options-select/example.svelte +21 -0
- package/docs/components/page/README.md +77 -0
- package/docs/components/page/example.svelte +10 -0
- package/docs/components/pagination/README.md +88 -0
- package/docs/components/pagination/example.svelte +10 -0
- package/docs/components/pagination-panel/README.md +120 -0
- package/docs/components/pagination-panel/example.svelte +16 -0
- package/docs/components/popup-hint/README.md +44 -0
- package/docs/components/popup-hint/example.svelte +5 -0
- package/docs/components/progress-bar/README.md +64 -0
- package/docs/components/progress-bar/example.svelte +8 -0
- package/docs/components/progress-step-bar/README.md +93 -0
- package/docs/components/progress-step-bar/example.svelte +7 -0
- package/docs/components/prompts-text-editor/README.md +146 -0
- package/docs/components/prompts-text-editor/example.svelte +17 -0
- package/docs/components/radio-button/README.md +121 -0
- package/docs/components/radio-button/example.svelte +18 -0
- package/docs/components/rows-layout/README.md +70 -0
- package/docs/components/rows-layout/example.svelte +12 -0
- package/docs/components/search-box/README.md +136 -0
- package/docs/components/search-box/example.svelte +16 -0
- package/docs/components/separator/README.md +44 -0
- package/docs/components/separator/example.svelte +7 -0
- package/docs/components/sidebar-layout/README.md +65 -0
- package/docs/components/sidebar-layout/example.svelte +12 -0
- package/docs/components/split/README.md +48 -0
- package/docs/components/split/example.svelte +8 -0
- package/docs/components/switch/README.md +77 -0
- package/docs/components/switch/example.svelte +11 -0
- package/docs/components/tabs/README.md +127 -0
- package/docs/components/tabs/example.svelte +22 -0
- package/docs/components/tag/README.md +63 -0
- package/docs/components/tag/example.svelte +8 -0
- package/docs/components/text-button/README.md +90 -0
- package/docs/components/text-button/example.svelte +9 -0
- package/docs/components/text-editor/README.md +147 -0
- package/docs/components/text-editor/example.svelte +16 -0
- package/docs/components/time-editor/README.md +130 -0
- package/docs/components/time-editor/example.svelte +16 -0
- package/docs/components/toast/README.md +52 -0
- package/docs/components/toast/example.svelte +9 -0
- package/docs/components/tooltip/README.md +44 -0
- package/docs/components/tooltip/example.svelte +5 -0
- package/docs/components/transfer/README.md +109 -0
- package/docs/components/transfer/example.svelte +13 -0
- package/docs/components/tree-view/README.md +163 -0
- package/docs/components/tree-view/example.svelte +26 -0
- package/docs/components/unit-number-editor/README.md +192 -0
- package/docs/components/unit-number-editor/example.svelte +18 -0
- package/package.json +15 -7
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# PaginationPanel
|
|
2
|
+
|
|
3
|
+
复合组件组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
组合页码、每页行数和总数信息的分页面板。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 数据表格底部分页控制
|
|
12
|
+
- 需要同时修改页码和 page size
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import PaginationPanel from '@ticatec/uniface-element/PaginationPanel';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `pageCount` | 是 | `number` | 否 | `0` | 否 | 总页数;为 0 时表示没有可分页数据。 |
|
|
25
|
+
| `pageNo` | 是 | `number` | 否 | `1` | 否 | 当前页码,通常从 1 开始。 |
|
|
26
|
+
| `type` | 否 | `'plain' \| 'round' \| 'circle'` | 否 | `'round'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `page$style` | 否 | `string` | 否 | `''` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
28
|
+
| `big` | 否 | `boolean` | 否 | `false` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
29
|
+
| `rowsSet` | 否 | `Array<number>` | 否 | `[25, 50, 100]` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
30
|
+
| `total` | 否 | `number` | 否 | `0` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
31
|
+
| `generateInfo` | 否 | `GenerateTotalInfo` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
32
|
+
| `rowCount` | 是 | `number` | 否 | `$bindable(25)` | 是 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
33
|
+
| `rowCountLabel` | 否 | `string` | 否 | `'Rows/Page'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
34
|
+
| `align` | 否 | `'left' \| 'right' \| ''` | 否 | `''` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
35
|
+
| `onPageSizeChange` | 否 | `OnPageSizeChange` | 否 | `undefined` | 否 | 事件或行为回调;参数与返回值以类型签名为准。 |
|
|
36
|
+
| `onchange` | 是 | `OnPageChange` | 否 | `undefined` | 否 | 用户完成值变更时调用;编程式赋值是否触发请以组件行为说明为准。 |
|
|
37
|
+
|
|
38
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
39
|
+
|
|
40
|
+
## 重要属性说明
|
|
41
|
+
|
|
42
|
+
### `pageCount`
|
|
43
|
+
|
|
44
|
+
总页数;为 0 时表示没有可分页数据。
|
|
45
|
+
|
|
46
|
+
- 类型:`number`
|
|
47
|
+
- 默认值:`0`
|
|
48
|
+
- 示例写法:`pageCount={10}`
|
|
49
|
+
|
|
50
|
+
### `pageNo`
|
|
51
|
+
|
|
52
|
+
当前页码,通常从 1 开始。
|
|
53
|
+
|
|
54
|
+
- 类型:`number`
|
|
55
|
+
- 默认值:`1`
|
|
56
|
+
- 示例写法:`pageNo={1}`
|
|
57
|
+
|
|
58
|
+
### `rowCount`
|
|
59
|
+
|
|
60
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
61
|
+
|
|
62
|
+
- 类型:`number`
|
|
63
|
+
- 默认值:`$bindable(25)`
|
|
64
|
+
- 推荐写法:`bind:rowCount`
|
|
65
|
+
|
|
66
|
+
### `onchange`
|
|
67
|
+
|
|
68
|
+
用户完成值变更时调用;编程式赋值是否触发请以组件行为说明为准。
|
|
69
|
+
|
|
70
|
+
- 类型:`OnPageChange`
|
|
71
|
+
- 默认值:`undefined`
|
|
72
|
+
- 示例写法:`onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}`
|
|
73
|
+
|
|
74
|
+
## 相关类型定义
|
|
75
|
+
|
|
76
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
77
|
+
|
|
78
|
+
### `GenerateTotalInfo`
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
export type GenerateTotalInfo = (total: number, pages?: number, pageNo?: number, rows?: number) => string;
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### `OnPageSizeChange`
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
export type OnPageSizeChange = (size: number) => void;
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### `OnPageChange`
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
export type OnPageChange = (pageNo: number) => void;
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## 示例
|
|
97
|
+
|
|
98
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
99
|
+
```svelte
|
|
100
|
+
<script lang="ts">
|
|
101
|
+
import PaginationPanel from '@ticatec/uniface-element/PaginationPanel';
|
|
102
|
+
let rowCount = $state<any>(25);
|
|
103
|
+
</script>
|
|
104
|
+
|
|
105
|
+
<PaginationPanel
|
|
106
|
+
bind:rowCount
|
|
107
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
108
|
+
onPageSizeChange={async (...args: any[]) => { console.log('onPageSizeChange', ...args); return true; }}
|
|
109
|
+
big={true}
|
|
110
|
+
pageCount={10}
|
|
111
|
+
pageNo={1}
|
|
112
|
+
rowsSet={[10, 25, 50]}
|
|
113
|
+
total={238}
|
|
114
|
+
/>
|
|
115
|
+
<p>当前状态:{JSON.stringify({rowCount})}</p>
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## 源码
|
|
119
|
+
|
|
120
|
+
- `src/lib/composite/pagination_panel/PaginationPanel.svelte`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import PaginationPanel from '@ticatec/uniface-element/PaginationPanel';
|
|
3
|
+
let rowCount = $state<any>(25);
|
|
4
|
+
</script>
|
|
5
|
+
|
|
6
|
+
<PaginationPanel
|
|
7
|
+
bind:rowCount
|
|
8
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
9
|
+
onPageSizeChange={async (...args: any[]) => { console.log('onPageSizeChange', ...args); return true; }}
|
|
10
|
+
big={true}
|
|
11
|
+
pageCount={10}
|
|
12
|
+
pageNo={1}
|
|
13
|
+
rowsSet={[10, 25, 50]}
|
|
14
|
+
total={238}
|
|
15
|
+
/>
|
|
16
|
+
<p>当前状态:{JSON.stringify({rowCount})}</p>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# PopupHint
|
|
2
|
+
|
|
3
|
+
浮层与弹窗组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
自动读取 data-tip/data-tooltip 的全局提示组件。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 按钮、字段和图标的悬停说明
|
|
12
|
+
- 需要 Markdown 格式的轻量帮助提示
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import PopupHint from '@ticatec/uniface-element/PopupHint';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
别名入口:`@ticatec/uniface-element/Tooltip`
|
|
21
|
+
|
|
22
|
+
## 属性
|
|
23
|
+
|
|
24
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
25
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
26
|
+
| `delay` | 否 | `number` | 否 | `200` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `offset` | 否 | `number` | 否 | `6` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
28
|
+
|
|
29
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
30
|
+
|
|
31
|
+
## 示例
|
|
32
|
+
|
|
33
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
34
|
+
```svelte
|
|
35
|
+
<script lang="ts">
|
|
36
|
+
import PopupHint from '@ticatec/uniface-element/PopupHint';
|
|
37
|
+
</script>
|
|
38
|
+
|
|
39
|
+
<PopupHint/>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 源码
|
|
43
|
+
|
|
44
|
+
- `src/lib/overlay/tooltip/Tooltip.svelte`
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# ProgressBar
|
|
2
|
+
|
|
3
|
+
反馈组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
展示任务完成比例和状态的进度条。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 上传、导入和批处理进度
|
|
12
|
+
- 需要可视化百分比或成功失败状态
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import ProgressBar from '@ticatec/uniface-element/ProgressBar';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `progress` | 否 | `number` | 否 | `0` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
25
|
+
| `size` | 否 | `number` | 否 | `100` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
26
|
+
| `type` | 否 | `ProgressBarType` | 否 | `"circular"` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `height` | 否 | `number` | 否 | `5` | 否 | 高度配置,数值单位为像素。 |
|
|
28
|
+
| `showText` | 否 | `boolean` | 否 | `true` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
29
|
+
| `status` | 否 | `ProgressStatus` | 否 | `ProgressStatus.progressing` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
30
|
+
|
|
31
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
32
|
+
|
|
33
|
+
## 相关类型定义
|
|
34
|
+
|
|
35
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
36
|
+
|
|
37
|
+
### `ProgressStatus`
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
export enum ProgressStatus {
|
|
41
|
+
progressing='progressing',
|
|
42
|
+
successful='successful',
|
|
43
|
+
failure='failure',
|
|
44
|
+
canceled='canceled'
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## 示例
|
|
49
|
+
|
|
50
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
51
|
+
```svelte
|
|
52
|
+
<script lang="ts">
|
|
53
|
+
import ProgressBar from '@ticatec/uniface-element/ProgressBar';
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<ProgressBar
|
|
57
|
+
height={48}
|
|
58
|
+
progress={65}
|
|
59
|
+
/>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## 源码
|
|
63
|
+
|
|
64
|
+
- `src/lib/feedback/progress-bar/ProgressBar.svelte`
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# ProgressStepBar
|
|
2
|
+
|
|
3
|
+
导航组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
以连续步骤块展示流程进度。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 注册、审批和订单处理流程
|
|
12
|
+
- 需要突出当前步骤及前后阶段
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import ProgressStepBar from '@ticatec/uniface-element/ProgressStepBar';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `steps` | 是 | `Array<ProgressStep>` | 是 | `—` | 否 | 流程步骤数据集合;每一步通常包含标题和当前状态(待处理/进行中/已完成)。 |
|
|
25
|
+
| `direction` | 否 | `'vertical' \| 'horizontal'` | 否 | `'horizontal'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
26
|
+
| `style` | 否 | `string` | 否 | `undefined` | 否 | 附加到组件根元素的内联样式。 |
|
|
27
|
+
| `theme` | 否 | `string` | 否 | `undefined` | 否 | 组件主题标识,通常通过 `data-theme` 选择对应 CSS 变量。 |
|
|
28
|
+
|
|
29
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
30
|
+
|
|
31
|
+
## 重要属性说明
|
|
32
|
+
|
|
33
|
+
### `steps`
|
|
34
|
+
|
|
35
|
+
流程步骤数据集合;每一步通常包含标题和当前状态(待处理/进行中/已完成)。
|
|
36
|
+
|
|
37
|
+
- 类型:`Array<ProgressStep>`
|
|
38
|
+
- 默认值:`—`
|
|
39
|
+
- 示例写法:`steps={[]}`
|
|
40
|
+
|
|
41
|
+
## 相关类型定义
|
|
42
|
+
|
|
43
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
44
|
+
|
|
45
|
+
### `ProgressStep`
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
export default interface ProgressStep {
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
*/
|
|
53
|
+
topic: string;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
*/
|
|
58
|
+
comment?: string;
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
*
|
|
62
|
+
*/
|
|
63
|
+
status: ProgressStepStatus;
|
|
64
|
+
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### `ProgressStepStatus`
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
export enum ProgressStepStatus {
|
|
72
|
+
Pending = 'pending',
|
|
73
|
+
Processing = 'processing',
|
|
74
|
+
Completed = 'completed'
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## 示例
|
|
79
|
+
|
|
80
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
81
|
+
```svelte
|
|
82
|
+
<script lang="ts">
|
|
83
|
+
import ProgressStepBar from '@ticatec/uniface-element/ProgressStepBar';
|
|
84
|
+
</script>
|
|
85
|
+
|
|
86
|
+
<ProgressStepBar
|
|
87
|
+
steps={[]}
|
|
88
|
+
/>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## 源码
|
|
92
|
+
|
|
93
|
+
- `src/lib/navigation/progress_step_bar/ProgressStepBar.svelte`
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# PromptsTextEditor
|
|
2
|
+
|
|
3
|
+
表单组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
支持提示项或结构化文本输入的编辑器。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- AI Prompt、模板片段和快捷文本
|
|
12
|
+
- 需要组合预设提示与自由输入
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import PromptsTextEditor from '@ticatec/uniface-element/PromptsTextEditor';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `theme` | 否 | `string` | 否 | `undefined` | 否 | 主题样式名称,用于切换组件外观主题 |
|
|
25
|
+
| `tooltip` | 否 | `string` | 否 | `undefined` | 否 | 悬停提示信息,鼠标悬浮在字段上时显示 |
|
|
26
|
+
| `error` | 否 | `string` | 否 | `undefined` | 否 | 错误信息,用于在字段下方展示校验错误提示 |
|
|
27
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 是否禁用该字段,禁用后字段不可编辑且不响应交互 |
|
|
28
|
+
| `readonly` | 是 | `boolean` | 否 | `false` | 否 | 是否只读,只读状态下字段不可编辑但可聚焦和复制 |
|
|
29
|
+
| `compact` | 否 | `boolean` | 否 | `false` | 否 | 是否启用紧凑模式,紧凑模式下字段内部间距更小 |
|
|
30
|
+
| `variant` | 是 | `EditorVariant` | 否 | `undefined` | 否 | 编辑器外观样式变体 |
|
|
31
|
+
| `placeholder` | 是 | `string` | 否 | `undefined` | 否 | 占位提示文本,字段值为空时在输入区域内展示 |
|
|
32
|
+
| `style` | 否 | `string` | 否 | `undefined` | 否 | 自定义内联样式,会应用到字段根容器上 |
|
|
33
|
+
| `onfocus` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 字段获得焦点时触发的回调 |
|
|
34
|
+
| `onblur` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 字段失去焦点时触发的回调 |
|
|
35
|
+
| `onchange` | 是 | `(value?: any) => void` | 否 | `undefined` | 否 | 字段值发生变化时触发的回调 |
|
|
36
|
+
| `value` | 是 | `string` | 否 | `$bindable()` | 是 | 组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。 |
|
|
37
|
+
| `prefix` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
38
|
+
| `suffix` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
39
|
+
| `words` | 是 | `Array<string>` | 是 | `—` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
40
|
+
| `menu$height` | 否 | `number` | 否 | `0` | 否 | 高度配置,数值单位为像素。 |
|
|
41
|
+
| `input\$*` | 否 | `any` | 否 | `透传` | 否 | 匹配此前缀的属性会透传给内部元素。 |
|
|
42
|
+
|
|
43
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
44
|
+
|
|
45
|
+
## 重要属性说明
|
|
46
|
+
|
|
47
|
+
### `disabled`
|
|
48
|
+
|
|
49
|
+
是否禁用该字段,禁用后字段不可编辑且不响应交互
|
|
50
|
+
|
|
51
|
+
- 类型:`boolean`
|
|
52
|
+
- 默认值:`false`
|
|
53
|
+
- 示例写法:`disabled={false}`
|
|
54
|
+
|
|
55
|
+
### `readonly`
|
|
56
|
+
|
|
57
|
+
是否只读,只读状态下字段不可编辑但可聚焦和复制
|
|
58
|
+
|
|
59
|
+
- 类型:`boolean`
|
|
60
|
+
- 默认值:`false`
|
|
61
|
+
- 示例写法:`readonly={false}`
|
|
62
|
+
|
|
63
|
+
### `variant`
|
|
64
|
+
|
|
65
|
+
编辑器外观样式变体
|
|
66
|
+
|
|
67
|
+
- 类型:`EditorVariant`
|
|
68
|
+
- 默认值:`undefined`
|
|
69
|
+
- 示例写法:`variant="plain"`
|
|
70
|
+
|
|
71
|
+
### `placeholder`
|
|
72
|
+
|
|
73
|
+
占位提示文本,字段值为空时在输入区域内展示
|
|
74
|
+
|
|
75
|
+
- 类型:`string`
|
|
76
|
+
- 默认值:`undefined`
|
|
77
|
+
- 示例写法:`placeholder="请输入或选择"`
|
|
78
|
+
|
|
79
|
+
### `onchange`
|
|
80
|
+
|
|
81
|
+
字段值发生变化时触发的回调
|
|
82
|
+
|
|
83
|
+
- 类型:`(value?: any) => void`
|
|
84
|
+
- 默认值:`undefined`
|
|
85
|
+
- 示例写法:`onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}`
|
|
86
|
+
|
|
87
|
+
### `value`
|
|
88
|
+
|
|
89
|
+
组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。
|
|
90
|
+
|
|
91
|
+
- 类型:`string`
|
|
92
|
+
- 默认值:`$bindable()`
|
|
93
|
+
- 推荐写法:`bind:value`
|
|
94
|
+
|
|
95
|
+
### `words`
|
|
96
|
+
|
|
97
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
98
|
+
|
|
99
|
+
- 类型:`Array<string>`
|
|
100
|
+
- 默认值:`—`
|
|
101
|
+
- 示例写法:`words={[]}`
|
|
102
|
+
|
|
103
|
+
## 组件实例方法
|
|
104
|
+
|
|
105
|
+
通过 `bind:this` 获取组件实例后调用。
|
|
106
|
+
|
|
107
|
+
| 方法 | 类型 | 说明 |
|
|
108
|
+
| --- | --- | --- |
|
|
109
|
+
| `focus()` | `() => void` | 组件实例方法。 |
|
|
110
|
+
|
|
111
|
+
## 相关类型定义
|
|
112
|
+
|
|
113
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
114
|
+
|
|
115
|
+
### `EditorVariant`
|
|
116
|
+
|
|
117
|
+
```ts
|
|
118
|
+
export type EditorVariant = '' | 'plain' | 'outlined' | 'filled';
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 示例
|
|
122
|
+
|
|
123
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
124
|
+
```svelte
|
|
125
|
+
<script lang="ts">
|
|
126
|
+
import PromptsTextEditor from '@ticatec/uniface-element/PromptsTextEditor';
|
|
127
|
+
let value = $state<any>("示例值");
|
|
128
|
+
</script>
|
|
129
|
+
|
|
130
|
+
<PromptsTextEditor
|
|
131
|
+
words={[]}
|
|
132
|
+
bind:value
|
|
133
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
134
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
135
|
+
variant="plain"
|
|
136
|
+
placeholder="请输入或选择"
|
|
137
|
+
disabled={false}
|
|
138
|
+
readonly={false}
|
|
139
|
+
compact={true}
|
|
140
|
+
/>
|
|
141
|
+
<p>当前状态:{JSON.stringify({value})}</p>
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## 源码
|
|
145
|
+
|
|
146
|
+
- `src/lib/form/prompts_text_editor/PromptsTextEditor.svelte`
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import PromptsTextEditor from '@ticatec/uniface-element/PromptsTextEditor';
|
|
3
|
+
let value = $state<any>("示例值");
|
|
4
|
+
</script>
|
|
5
|
+
|
|
6
|
+
<PromptsTextEditor
|
|
7
|
+
words={[]}
|
|
8
|
+
bind:value
|
|
9
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
10
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
11
|
+
variant="plain"
|
|
12
|
+
placeholder="请输入或选择"
|
|
13
|
+
disabled={false}
|
|
14
|
+
readonly={false}
|
|
15
|
+
compact={true}
|
|
16
|
+
/>
|
|
17
|
+
<p>当前状态:{JSON.stringify({value})}</p>
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# RadioButton
|
|
2
|
+
|
|
3
|
+
表单组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
单个单选按钮,通常与同名选项组成互斥组。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 少量状态或方案选择
|
|
12
|
+
- 需要原生单选语义和键盘操作
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import RadioButton from '@ticatec/uniface-element/RadioButton';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `value` | 是 | `any` | 是 | `—` | 否 | 组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。 |
|
|
25
|
+
| `label` | 是 | `string` | 是 | `—` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
26
|
+
| `group` | 是 | `any` | 是 | `$bindable()` | 是 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。 |
|
|
28
|
+
| `readonly` | 是 | `boolean` | 否 | `false` | 否 | 只读状态。保留内容展示,但阻止用户修改。 |
|
|
29
|
+
| `compact` | 否 | `boolean` | 否 | `false` | 否 | 启用紧凑尺寸,减少组件高度和内边距。 |
|
|
30
|
+
| `style` | 否 | `string` | 否 | `undefined` | 否 | 附加到组件根元素的内联样式。 |
|
|
31
|
+
| `onfocus` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 组件获得焦点时调用。 |
|
|
32
|
+
| `onblur` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 组件失去焦点时调用。 |
|
|
33
|
+
| `onchange` | 是 | `(value: any) => void` | 否 | `undefined` | 否 | 用户完成值变更时调用;编程式赋值是否触发请以组件行为说明为准。 |
|
|
34
|
+
|
|
35
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
36
|
+
|
|
37
|
+
## 重要属性说明
|
|
38
|
+
|
|
39
|
+
### `value`
|
|
40
|
+
|
|
41
|
+
组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。
|
|
42
|
+
|
|
43
|
+
- 类型:`any`
|
|
44
|
+
- 默认值:`—`
|
|
45
|
+
- 示例写法:参见下方完整示例中的类型化实现。
|
|
46
|
+
|
|
47
|
+
### `label`
|
|
48
|
+
|
|
49
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
50
|
+
|
|
51
|
+
- 类型:`string`
|
|
52
|
+
- 默认值:`—`
|
|
53
|
+
- 示例写法:`label="示例标签"`
|
|
54
|
+
|
|
55
|
+
### `group`
|
|
56
|
+
|
|
57
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
58
|
+
|
|
59
|
+
- 类型:`any`
|
|
60
|
+
- 默认值:`$bindable()`
|
|
61
|
+
- 推荐写法:`bind:group`
|
|
62
|
+
|
|
63
|
+
### `disabled`
|
|
64
|
+
|
|
65
|
+
禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。
|
|
66
|
+
|
|
67
|
+
- 类型:`boolean`
|
|
68
|
+
- 默认值:`false`
|
|
69
|
+
- 示例写法:`disabled={false}`
|
|
70
|
+
|
|
71
|
+
### `readonly`
|
|
72
|
+
|
|
73
|
+
只读状态。保留内容展示,但阻止用户修改。
|
|
74
|
+
|
|
75
|
+
- 类型:`boolean`
|
|
76
|
+
- 默认值:`false`
|
|
77
|
+
- 示例写法:`readonly={false}`
|
|
78
|
+
|
|
79
|
+
### `onchange`
|
|
80
|
+
|
|
81
|
+
用户完成值变更时调用;编程式赋值是否触发请以组件行为说明为准。
|
|
82
|
+
|
|
83
|
+
- 类型:`(value: any) => void`
|
|
84
|
+
- 默认值:`undefined`
|
|
85
|
+
- 示例写法:`onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}`
|
|
86
|
+
|
|
87
|
+
## 组件实例方法
|
|
88
|
+
|
|
89
|
+
通过 `bind:this` 获取组件实例后调用。
|
|
90
|
+
|
|
91
|
+
| 方法 | 类型 | 说明 |
|
|
92
|
+
| --- | --- | --- |
|
|
93
|
+
| `focus()` | `() => void` | 组件实例方法。 |
|
|
94
|
+
|
|
95
|
+
## 示例
|
|
96
|
+
|
|
97
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
98
|
+
```svelte
|
|
99
|
+
<script lang="ts">
|
|
100
|
+
import RadioButton from '@ticatec/uniface-element/RadioButton';
|
|
101
|
+
// 请替换为符合组件类型的业务数据。
|
|
102
|
+
const exampleValue = undefined as any;
|
|
103
|
+
let group = $state<any>();
|
|
104
|
+
</script>
|
|
105
|
+
|
|
106
|
+
<RadioButton
|
|
107
|
+
value={exampleValue}
|
|
108
|
+
label="示例标签"
|
|
109
|
+
bind:group
|
|
110
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
111
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
112
|
+
disabled={false}
|
|
113
|
+
readonly={false}
|
|
114
|
+
compact={true}
|
|
115
|
+
/>
|
|
116
|
+
<p>当前状态:{JSON.stringify({group})}</p>
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## 源码
|
|
120
|
+
|
|
121
|
+
- `src/lib/form/radio_button/RadioButton.svelte`
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import RadioButton from '@ticatec/uniface-element/RadioButton';
|
|
3
|
+
// 请替换为符合组件类型的业务数据。
|
|
4
|
+
const exampleValue = undefined as any;
|
|
5
|
+
let group = $state<any>();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<RadioButton
|
|
9
|
+
value={exampleValue}
|
|
10
|
+
label="示例标签"
|
|
11
|
+
bind:group
|
|
12
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
13
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
14
|
+
disabled={false}
|
|
15
|
+
readonly={false}
|
|
16
|
+
compact={true}
|
|
17
|
+
/>
|
|
18
|
+
<p>当前状态:{JSON.stringify({group})}</p>
|