mirror of
https://gitee.com/baidu/amis.git
synced 2024-11-29 18:48:45 +08:00
28a90d94dd
* feat: 新增 amis-render 组件, 用于渲染数据里的 amis 配置 * type 改名为 amis * 更新 snapshot * 修复 snapshot 报错 * fix:input-table删除行记录动作问题 * feat: 范围类组件支持 extraName 拆成两个字段 (#7583) * style: tr 的active 样式调整 close: #7585 * docs: 更新 React 官网链接 * docs: 添加 position 默认值示意 (#7592) * chore:调用组件动作时找不到则throw Error * feat: 新增 amis render 渲染组件 --------- Co-authored-by: lvxiaojiao <lvxiaojiao@baidu.com> Co-authored-by: liaoxuezhi <2betop.cn@gmail.com> Co-authored-by: liaoxuezhi <liaoxuezhi@icloud.com> Co-authored-by: YangQi <yangfong2022@qq.com> Co-authored-by: Allen <yupeng.fe@qq.com>
1218 lines
35 KiB
TypeScript
1218 lines
35 KiB
TypeScript
import React from 'react';
|
|
import {Switch} from 'react-router-dom';
|
|
import {navigations2route} from './App';
|
|
import makeMarkdownRenderer from './MdRenderer';
|
|
function wrapDoc(doc: any) {
|
|
return {
|
|
default: makeMarkdownRenderer(doc)
|
|
};
|
|
}
|
|
|
|
export const components = [
|
|
{
|
|
label: '布局',
|
|
children: [
|
|
{
|
|
label: '组件介绍',
|
|
path: '/zh-CN/components/index',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/index.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Page 页面',
|
|
path: '/zh-CN/components/page',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/page.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Container 容器',
|
|
path: '/zh-CN/components/container',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/container.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Collapse 折叠器',
|
|
path: '/zh-CN/components/collapse',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/collapse.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Divider 分割线',
|
|
path: '/zh-CN/components/divider',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/divider.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Flex 布局',
|
|
path: '/zh-CN/components/flex',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/flex.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Grid 水平分栏',
|
|
path: '/zh-CN/components/grid',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/grid.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Grid 2D 布局',
|
|
path: '/zh-CN/components/grid-2d',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/grid-2d.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'HBox 布局',
|
|
path: '/zh-CN/components/hbox',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/hbox.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Pagination分页',
|
|
path: '/zh-CN/components/pagination',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/pagination.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'PaginationWrapper 分页容器',
|
|
path: '/zh-CN/components/pagination-wrapper',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/pagination-wrapper.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Panel 面板',
|
|
path: '/zh-CN/components/panel',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/panel.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Tabs 选项卡',
|
|
path: '/zh-CN/components/tabs',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/tabs.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Wrapper 包裹容器',
|
|
path: '/zh-CN/components/wrapper',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/wrapper.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Portlet 门户栏目',
|
|
path: '/zh-CN/components/portlet',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/portlet.md').then(wrapDoc)
|
|
)
|
|
}
|
|
]
|
|
},
|
|
{
|
|
label: '功能',
|
|
children: [
|
|
{
|
|
label: 'Action 行为按钮',
|
|
path: '/zh-CN/components/action',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/action.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'App 多页应用',
|
|
path: '/zh-CN/components/app',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/app.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Button 按钮',
|
|
path: '/zh-CN/components/button',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/button.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'ButtonGroup 按钮组',
|
|
path: '/zh-CN/components/button-group',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/button-group.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Breadcrumb 面包屑',
|
|
path: '/zh-CN/components/breadcrumb',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/breadcrumb.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Custom 自定义组件',
|
|
path: '/zh-CN/components/custom',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/custom.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'DropDownButton 下拉按钮',
|
|
path: '/zh-CN/components/dropdown-button',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/dropdown-button.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Service 功能型容器',
|
|
path: '/zh-CN/components/service',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/service.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Nav 导航',
|
|
path: '/zh-CN/components/nav',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/nav.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'AnchorNav 锚点导航',
|
|
path: '/zh-CN/components/anchor-nav',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/anchor-nav.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'TooltipWrapper 文字提示容器',
|
|
path: '/zh-CN/components/tooltip',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/tooltip-wrapper.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'PopOver 弹出提示',
|
|
path: '/zh-CN/components/popover',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/popover.md').then(wrapDoc)
|
|
)
|
|
}
|
|
]
|
|
},
|
|
|
|
{
|
|
label: '数据输入',
|
|
children: [
|
|
{
|
|
label: 'Form 表单',
|
|
path: '/zh-CN/components/form/index',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/index.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'FormItem 表单项通用',
|
|
path: '/zh-CN/components/form/formitem',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/formitem.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Control 表单项包裹',
|
|
path: '/zh-CN/components/form/control',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/control.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Options 选择器表单项',
|
|
path: '/zh-CN/components/form/options',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/options.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputArray 数组输入框',
|
|
path: '/zh-CN/components/form/input-array',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-array.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'ButtonToolbar 按钮工具栏',
|
|
path: '/zh-CN/components/form/button-toolbar',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/button-toolbar.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'ButtonGroupSelect 按钮点选',
|
|
path: '/zh-CN/components/form/button-group-select',
|
|
component: React.lazy(() =>
|
|
import(
|
|
'../../docs/zh-CN/components/form/button-group-select.md'
|
|
).then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'ChainedSelect 链式下拉框',
|
|
path: '/zh-CN/components/form/chain-select',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/chain-select.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Checkbox 勾选框',
|
|
path: '/zh-CN/components/form/checkbox',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/checkbox.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Checkboxes 复选框',
|
|
path: '/zh-CN/components/form/checkboxes',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/checkboxes.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputCity 城市选择器',
|
|
path: '/zh-CN/components/form/input-city',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-city.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputColor 颜色选择器',
|
|
path: '/zh-CN/components/form/input-color',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-color.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Combo 组合',
|
|
path: '/zh-CN/components/form/combo',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/combo.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'ConditionBuilder 条件组合',
|
|
path: '/zh-CN/components/form/condition-builder',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/condition-builder.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputDate 日期选择器',
|
|
path: '/zh-CN/components/form/input-date',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-date.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputDatetime 日期时间选择器',
|
|
path: '/zh-CN/components/form/input-datetime',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-datetime.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputMonth 月份选择器',
|
|
path: '/zh-CN/components/form/input-month',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-month.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputDateRange 日期范围选择器',
|
|
path: '/zh-CN/components/form/input-date-range',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-date-range.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputDatetimeRange 日期时间范围',
|
|
path: '/zh-CN/components/form/input-datetime-range',
|
|
component: React.lazy(() =>
|
|
import(
|
|
'../../docs/zh-CN/components/form/input-datetime-range.md'
|
|
).then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputMonthRange 月份范围',
|
|
path: '/zh-CN/components/form/input-month-range',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-month-range.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputKV 键值对',
|
|
path: '/zh-CN/components/form/input-kv',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-kv.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputKVS 键值对象',
|
|
path: '/zh-CN/components/form/input-kvs',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-kvs.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputFormula 公式编辑器',
|
|
path: '/zh-CN/components/form/input-formula',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-formula.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'DiffEditor 对比编辑器',
|
|
path: '/zh-CN/components/form/diff-editor',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/diff-editor.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Editor 代码编辑器',
|
|
path: '/zh-CN/components/form/editor',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/editor.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'FieldSet 表单项集合',
|
|
path: '/zh-CN/components/form/fieldset',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/fieldset.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputExcel Excel 解析',
|
|
path: '/zh-CN/components/form/input-excel',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-excel.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputFile 文件上传',
|
|
path: '/zh-CN/components/form/input-file',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-file.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Formula 公式',
|
|
path: '/zh-CN/components/form/formula',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/formula.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Group 表单项组',
|
|
path: '/zh-CN/components/form/group',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/group.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Hidden 隐藏字段',
|
|
path: '/zh-CN/components/form/hidden',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/hidden.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputImage 图片',
|
|
path: '/zh-CN/components/form/input-image',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-image.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputGroup 输入框组合',
|
|
path: '/zh-CN/components/form/input-group',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-group.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'ListSelect 选择器',
|
|
path: '/zh-CN/components/form/list-select',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/list-select.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'LocationPicker 地理位置',
|
|
path: '/zh-CN/components/form/location-picker',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/location-picker.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'UUID 随机 ID',
|
|
path: '/zh-CN/components/form/uuid',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/uuid.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'MatrixCheckboxes 矩阵勾选',
|
|
path: '/zh-CN/components/form/matrix-checkboxes',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/matrix-checkboxes.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'NestedSelect 级联选择器',
|
|
path: '/zh-CN/components/form/nestedselect',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/nestedselect.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputNumber 数字输入',
|
|
path: '/zh-CN/components/form/input-number',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-number.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputPassword 密码输入框',
|
|
path: '/zh-CN/components/form/input-password',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-password.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Picker 列表选择器',
|
|
path: '/zh-CN/components/form/picker',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/picker.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputQuarter 季度',
|
|
path: '/zh-CN/components/form/input-quarter',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-quarter.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputQuarterRange 季度范围',
|
|
path: '/zh-CN/components/form/input-quarter-range',
|
|
component: React.lazy(() =>
|
|
import(
|
|
'../../docs/zh-CN/components/form/input-quarter-range.md'
|
|
).then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Radio 单选框',
|
|
path: '/zh-CN/components/form/radio',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/radio.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Radios 单选框',
|
|
path: '/zh-CN/components/form/radios',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/radios.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'ChartRadios 图表单选框',
|
|
path: '/zh-CN/components/form/chart-radios',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/chart-radios.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputRating 评分',
|
|
path: '/zh-CN/components/form/input-rating',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-rating.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputRange 滑块',
|
|
path: '/zh-CN/components/form/input-range',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-range.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputRepeat 重复频率选择器',
|
|
path: '/zh-CN/components/form/input-repeat',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-repeat.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputRichText 富文本编辑器',
|
|
path: '/zh-CN/components/form/input-rich-text',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-rich-text.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Select 下拉框',
|
|
path: '/zh-CN/components/form/select',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/select.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputSubForm 子表单',
|
|
path: '/zh-CN/components/form/input-sub-form',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-sub-form.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Switch 开关',
|
|
path: '/zh-CN/components/form/switch',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/switch.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Static 静态展示',
|
|
path: '/zh-CN/components/form/static',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/static.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputTable 表格',
|
|
path: '/zh-CN/components/form/input-table',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-table.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputTag 标签选择器',
|
|
path: '/zh-CN/components/form/input-tag',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-tag.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputText 输入框',
|
|
path: '/zh-CN/components/form/input-text',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-text.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Textarea 多行输入框',
|
|
path: '/zh-CN/components/form/textarea',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/textarea.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputTime 时间',
|
|
path: '/zh-CN/components/form/input-time',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-time.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputTimeRange 时间',
|
|
path: '/zh-CN/components/form/input-time-range',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-time-range.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'Transfer 穿梭器',
|
|
path: '/zh-CN/components/form/transfer',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/transfer.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'TransferPicker 穿梭选择器',
|
|
path: '/zh-CN/components/form/transfer-picker',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/transfer-picker.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'TabsTransfer 组合穿梭器',
|
|
path: '/zh-CN/components/form/tabs-transfer',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/tabs-transfer.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
{
|
|
label: 'TabsTransferPicker 组合穿梭选择器',
|
|
path: '/zh-CN/components/form/tabs-transfer-picker',
|
|
component: React.lazy(() =>
|
|
import(
|
|
'../../docs/zh-CN/components/form/tabs-transfer-picker.md'
|
|
).then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputTree 树形选择框',
|
|
path: '/zh-CN/components/form/input-tree',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-tree.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'TreeSelect 树形选择器',
|
|
path: '/zh-CN/components/form/treeselect',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/treeselect.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputYear 年输入',
|
|
path: '/zh-CN/components/form/input-year',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-year.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'InputYearRange 年份范围',
|
|
path: '/zh-CN/components/form/input-year-range',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/input-year-range.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'JsonSchema',
|
|
path: '/zh-CN/components/form/json-schema',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/json-schema.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'JsonSchema Editor',
|
|
path: '/zh-CN/components/form/json-schema-editor',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/form/json-schema-editor.md').then(
|
|
wrapDoc
|
|
)
|
|
)
|
|
}
|
|
]
|
|
},
|
|
|
|
{
|
|
label: '数据展示',
|
|
children: [
|
|
{
|
|
label: 'CRUD 增删改查',
|
|
path: '/zh-CN/components/crud',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/crud.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Table 表格',
|
|
path: '/zh-CN/components/table',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/table.md').then(wrapDoc)
|
|
)
|
|
},
|
|
// {
|
|
// label: 'Table2 表格',
|
|
// path: '/zh-CN/components/table2',
|
|
// component: React.lazy(() =>
|
|
// import('../../docs/zh-CN/components/table2.md').then(wrapDoc)
|
|
// )
|
|
// },
|
|
{
|
|
label: 'Table View 表格视图',
|
|
path: '/zh-CN/components/table-view',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/table-view.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Calendar 日历日程',
|
|
path: '/zh-CN/components/calendar',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/calendar.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Card 卡片',
|
|
path: '/zh-CN/components/card',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/card.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Cards 卡片组',
|
|
path: '/zh-CN/components/cards',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/cards.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Carousel 轮播图',
|
|
path: '/zh-CN/components/carousel',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/carousel.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Chart 图表',
|
|
path: '/zh-CN/components/chart',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/chart.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Code 代码高亮',
|
|
path: '/zh-CN/components/code',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/code.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Color 颜色',
|
|
path: '/zh-CN/components/color',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/color.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Date 日期时间',
|
|
path: '/zh-CN/components/date',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/date.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Each 循环渲染器',
|
|
path: '/zh-CN/components/each',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/each.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Html',
|
|
path: '/zh-CN/components/html',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/html.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Icon 图标',
|
|
path: '/zh-CN/components/icon',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/icon.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'iFrame',
|
|
path: '/zh-CN/components/iframe',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/iframe.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Image 图片',
|
|
path: '/zh-CN/components/image',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/image.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Images 图片集',
|
|
path: '/zh-CN/components/images',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/images.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'GridNav 宫格导航',
|
|
path: '/zh-CN/components/grid-nav',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/grid-nav.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Json',
|
|
path: '/zh-CN/components/json',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/json.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Link 链接',
|
|
path: '/zh-CN/components/link',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/link.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'List 列表',
|
|
path: '/zh-CN/components/list',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/list.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Log 实时日志',
|
|
path: '/zh-CN/components/log',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/log.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Mapping 映射',
|
|
path: '/zh-CN/components/mapping',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/mapping.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Number 展示',
|
|
path: '/zh-CN/components/number',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/number.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Markdown 渲染',
|
|
path: '/zh-CN/components/markdown',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/markdown.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'OfficeViewer 文档渲染',
|
|
path: '/zh-CN/components/office-viewer',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/office-viewer.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Progress 进度条',
|
|
path: '/zh-CN/components/progress',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/progress.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Steps 步骤条',
|
|
path: '/zh-CN/components/steps',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/steps.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Property 属性表',
|
|
path: '/zh-CN/components/property',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/property.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'QRCode 二维码',
|
|
path: '/zh-CN/components/qrcode',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/qrcode.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'BarCode 条形码',
|
|
path: '/zh-CN/components/barcode',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/barcode.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Remark 标记',
|
|
path: '/zh-CN/components/remark',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/remark.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'SearchBox 搜索框',
|
|
path: '/zh-CN/components/search-box',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/search-box.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Sparkline 走势图',
|
|
path: '/zh-CN/components/sparkline',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/sparkline.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Status 状态',
|
|
path: '/zh-CN/components/status',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/status.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Tpl 模板',
|
|
path: '/zh-CN/components/tpl',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/tpl.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Tag 标签',
|
|
path: '/zh-CN/components/tag',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/tag.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Video 视频',
|
|
path: '/zh-CN/components/video',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/video.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Timeline 时间轴',
|
|
path: '/zh-CN/components/timeline',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/timeline.md').then(wrapDoc)
|
|
)
|
|
}
|
|
]
|
|
},
|
|
|
|
{
|
|
label: '反馈',
|
|
children: [
|
|
{
|
|
label: 'Alert 提示',
|
|
path: '/zh-CN/components/alert',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/alert.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Dialog 对话框',
|
|
path: '/zh-CN/components/dialog',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/dialog.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Drawer 抽屉',
|
|
path: '/zh-CN/components/drawer',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/drawer.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Spinner 加载中',
|
|
path: '/zh-CN/components/spinner',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/spinner.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Toast 轻提示',
|
|
path: '/zh-CN/components/toast',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/toast.md').then(wrapDoc)
|
|
)
|
|
}
|
|
]
|
|
},
|
|
|
|
{
|
|
label: '其他',
|
|
children: [
|
|
{
|
|
label: 'Avatar 头像',
|
|
path: '/zh-CN/components/avatar',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/avatar.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Audio 音频',
|
|
path: '/zh-CN/components/audio',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/audio.md').then(wrapDoc)
|
|
)
|
|
},
|
|
|
|
{
|
|
label: 'Tasks 任务操作集合',
|
|
path: '/zh-CN/components/tasks',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/tasks.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Badge 角标',
|
|
path: '/zh-CN/components/badge',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/badge.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Wizard 向导',
|
|
path: '/zh-CN/components/wizard',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/wizard.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'Web Component',
|
|
path: '/zh-CN/components/web-component',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/web-component.md').then(wrapDoc)
|
|
)
|
|
},
|
|
{
|
|
label: 'amis 渲染器',
|
|
path: '/zh-CN/components/amis',
|
|
component: React.lazy(() =>
|
|
import('../../docs/zh-CN/components/amis.md').then(wrapDoc)
|
|
)
|
|
}
|
|
]
|
|
}
|
|
];
|
|
|
|
export default class Components extends React.PureComponent<any> {
|
|
componentDidMount() {
|
|
this.props.setNavigations(components, false);
|
|
}
|
|
|
|
componentDidUpdate(preProps: any) {
|
|
if (this.props.location.pathname !== preProps.location.pathname) {
|
|
this.props.setNavigations(components, false);
|
|
}
|
|
}
|
|
|
|
render() {
|
|
return (
|
|
<Switch>
|
|
{navigations2route(components, {
|
|
theme: this.props.theme,
|
|
classPrefix: this.props.classPrefix,
|
|
locale: this.props.locale,
|
|
viewMode: this.props.viewMode,
|
|
offScreen: this.props.offScreen
|
|
})}
|
|
{/* {React.cloneElement(this.props.children as any, {
|
|
...(this.props.children as any).props,
|
|
theme: this.props.theme,
|
|
classPrefix: this.props.classPrefix,
|
|
locale: this.props.locale,
|
|
viewMode: this.props.viewMode,
|
|
offScreen: this.props.offScreen
|
|
})} */}
|
|
</Switch>
|
|
);
|
|
}
|
|
}
|