vue2-client 1.2.0 → 1.2.3
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 +65 -65
- package/babel.config.js +1 -0
- package/docs/notice.md +22 -0
- package/index.js +28 -28
- package/package.json +1 -1
- package/src/App.vue +93 -93
- package/src/assets/img/SunClientDownload.png +0 -0
- package/src/assets/img/SunClientManual/1.png +0 -0
- package/src/assets/img/SunClientManual/2.png +0 -0
- package/src/assets/img/SunClientManual/3.png +0 -0
- package/src/assets/img/SunClientManual/4.png +0 -0
- package/src/assets/img/ToDeskDownload.png +0 -0
- package/src/assets/img/ToDeskManual/1.png +0 -0
- package/src/assets/img/ToDeskManual/2.png +0 -0
- package/src/assets/img/ToDeskManual/3.png +0 -0
- package/src/assets/img/ToDeskManual/4.png +0 -0
- package/src/assets/sound/newNote.mp3 +0 -0
- package/src/base-client/all.js +57 -57
- package/src/base-client/components/common/CreateQuery/CreateQuery.vue +1157 -1159
- package/src/base-client/components/common/CreateQuery/index.md +42 -42
- package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +540 -540
- package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
- package/src/base-client/components/common/CustomColumnsDrawer/index.md +46 -46
- package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +150 -150
- package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
- package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
- package/src/base-client/components/common/XAddForm/XAddForm.vue +323 -323
- package/src/base-client/components/common/XAddForm/index.md +60 -60
- package/src/base-client/components/common/XBadge/index.md +39 -39
- package/src/base-client/components/common/XCard/index.md +43 -43
- package/src/base-client/components/common/XForm/XForm.vue +275 -275
- package/src/base-client/components/common/XForm/XFormItem.vue +217 -217
- package/src/base-client/components/common/XForm/index.md +196 -196
- package/src/base-client/components/common/XFormCol/index.md +35 -35
- package/src/base-client/components/common/XFormTable/XFormTable.vue +407 -405
- package/src/base-client/components/common/XFormTable/index.md +89 -89
- package/src/base-client/components/common/XTable/XTable.vue +262 -262
- package/src/base-client/components/common/XTable/index.md +255 -255
- package/src/base-client/components/common/XTreeOne/XTreeOne.vue +105 -105
- package/src/base-client/components/iot/CustomerDetailsView/CustomerDetailsView.vue +226 -226
- package/src/base-client/components/iot/CustomerDetailsView/index.md +41 -41
- package/src/base-client/components/iot/DataAnalysisUser/DataAnalysisUser.vue +127 -127
- package/src/base-client/components/iot/DataAnalysisView/DataAnalysisView.vue +244 -250
- package/src/base-client/components/iot/DataAnalysisViewGD/DataAnalysisViewGD.vue +548 -548
- package/src/base-client/components/iot/DeviceBrandDetailsView/DeviceBrandDetailsView.vue +453 -453
- package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +231 -231
- package/src/base-client/components/iot/DeviceDetailsView/index.md +43 -43
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsCount.vue +330 -330
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -57
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstruct.vue +122 -122
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsInstructOperate.vue +122 -122
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsMain.vue +225 -225
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +135 -135
- package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +277 -277
- package/src/base-client/components/iot/InstructDetailsView/InstructDetailsView.vue +472 -472
- package/src/base-client/components/iot/InstructDetailsView/index.md +45 -45
- package/src/base-client/components/iot/LogDetailsView/LogDetailsView.vue +380 -380
- package/src/base-client/components/iot/LogDetailsView/index.md +43 -43
- package/src/base-client/components/iot/MeterDetailsView/MeterDetailsView.vue +360 -360
- package/src/base-client/components/iot/MeterDetailsView/index.md +43 -43
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsCount.vue +335 -335
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsException.vue +185 -185
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsHandPlan.vue +292 -292
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsInstruct.vue +237 -237
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsMain.vue +257 -257
- package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsSellGas.vue +190 -190
- package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +723 -723
- package/src/base-client/components/iot/WebmeterAnalysisView/index.md +48 -48
- package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
- package/src/base-client/components/system/DictionaryDetailsView/index.md +41 -41
- package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +248 -248
- package/src/base-client/components/ticket/EmployeeDetailsView/EmployeeDetailsView.vue +371 -406
- package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +838 -486
- package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +261 -184
- package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +528 -303
- package/src/base-client/plugins/AppData.js +69 -69
- package/src/base-client/plugins/GetLoginInfoService.js +221 -221
- package/src/base-client/plugins/index.js +21 -21
- package/src/bootstrap.js +27 -27
- package/src/components/Ellipsis/Ellipsis.vue +64 -64
- package/src/components/Ellipsis/index.md +38 -38
- package/src/components/NumberInfo/index.md +43 -43
- package/src/components/STable/README.md +341 -341
- package/src/components/Trend/index.md +45 -45
- package/src/components/cache/AKeepAlive.js +172 -172
- package/src/components/checkbox/index.js +7 -7
- package/src/components/index.js +36 -36
- package/src/components/menu/menu.js +273 -273
- package/src/components/setting/Setting.vue +237 -237
- package/src/components/table/advance/AdvanceTable.vue +275 -275
- package/src/components/transition/PageToggleTransition.vue +97 -97
- package/src/layouts/CommonLayout.vue +42 -42
- package/src/layouts/PageLayout.vue +151 -151
- package/src/layouts/SinglePageView.vue +74 -74
- package/src/layouts/header/AdminHeader.vue +109 -109
- package/src/layouts/header/HeaderAvatar.vue +60 -60
- package/src/layouts/header/HeaderNotice.vue +97 -97
- package/src/layouts/tabs/TabsHead.vue +190 -190
- package/src/layouts/tabs/TabsView.vue +355 -355
- package/src/main.js +20 -20
- package/src/mock/goods/index.js +108 -108
- package/src/mock/index.js +12 -12
- package/src/mock/project/index.js +17 -17
- package/src/mock/user/current.js +13 -13
- package/src/mock/user/login.js +39 -39
- package/src/mock/workplace/index.js +15 -15
- package/src/pages/exception/403.vue +25 -25
- package/src/pages/exception/404.vue +25 -25
- package/src/pages/exception/500.vue +25 -25
- package/src/pages/login/Login.vue +194 -194
- package/src/pages/report/ReportTableHome.vue +28 -28
- package/src/pages/resourceManage/resourceManageMain.vue +55 -55
- package/src/pages/system/applyInstallView/Core.vue +570 -570
- package/src/pages/system/applyInstallView/index.vue +34 -34
- package/src/pages/system/dictionary/index.vue +41 -41
- package/src/pages/system/queryParams/index.vue +41 -41
- package/src/router/async/config.async.js +25 -25
- package/src/router/async/router.map.js +59 -59
- package/src/router/guards.js +104 -104
- package/src/router/index.js +27 -27
- package/src/services/api/EmployeeDetailsViewApi.js +3 -1
- package/src/services/api/TicketDetailsViewApi.js +9 -1
- package/src/services/api/common.js +37 -39
- package/src/services/api/restTools.js +23 -23
- package/src/services/dataSource.js +12 -12
- package/src/services/user.js +34 -34
- package/src/store/modules/setting.js +114 -114
- package/src/utils/i18n.js +80 -80
- package/src/utils/indexedDB.js +146 -146
- package/src/utils/request.js +197 -197
- package/src/utils/routerUtil.js +15 -2
- package/tests/unit/ReportTable.spec.js +15 -15
- package/vue.config.js +153 -153
- package/webpack.config.js +12 -12
package/src/bootstrap.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import Vue from 'vue'
|
|
2
|
-
import { loadRoutes, loadGuards, setAppOptions } from '@vue2-client/utils/routerUtil'
|
|
3
|
-
import { loadInterceptors } from '@vue2-client/utils/request'
|
|
4
|
-
import guards from '@vue2-client/router/guards'
|
|
5
|
-
import interceptors from '@vue2-client/utils/axios-interceptors'
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* 启动引导方法
|
|
9
|
-
* 应用启动时需要执行的操作放在这里
|
|
10
|
-
* @param router 应用的路由实例
|
|
11
|
-
* @param store 应用的 vuex.store 实例
|
|
12
|
-
* @param i18n 应用的 vue-i18n 实例
|
|
13
|
-
* @param i18n 应用的 message 实例
|
|
14
|
-
*/
|
|
15
|
-
function bootstrap ({ router, store, i18n, message }) {
|
|
16
|
-
Vue.$store = store
|
|
17
|
-
// 设置应用配置
|
|
18
|
-
setAppOptions({ router, store, i18n })
|
|
19
|
-
// 加载 axios 拦截器
|
|
20
|
-
loadInterceptors(interceptors, { router, store, i18n, message })
|
|
21
|
-
// 加载路由
|
|
22
|
-
loadRoutes()
|
|
23
|
-
// 加载路由守卫
|
|
24
|
-
loadGuards(guards, { router, store, i18n, message })
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export default bootstrap
|
|
1
|
+
import Vue from 'vue'
|
|
2
|
+
import { loadRoutes, loadGuards, setAppOptions } from '@vue2-client/utils/routerUtil'
|
|
3
|
+
import { loadInterceptors } from '@vue2-client/utils/request'
|
|
4
|
+
import guards from '@vue2-client/router/guards'
|
|
5
|
+
import interceptors from '@vue2-client/utils/axios-interceptors'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* 启动引导方法
|
|
9
|
+
* 应用启动时需要执行的操作放在这里
|
|
10
|
+
* @param router 应用的路由实例
|
|
11
|
+
* @param store 应用的 vuex.store 实例
|
|
12
|
+
* @param i18n 应用的 vue-i18n 实例
|
|
13
|
+
* @param i18n 应用的 message 实例
|
|
14
|
+
*/
|
|
15
|
+
function bootstrap ({ router, store, i18n, message }) {
|
|
16
|
+
Vue.$store = store
|
|
17
|
+
// 设置应用配置
|
|
18
|
+
setAppOptions({ router, store, i18n })
|
|
19
|
+
// 加载 axios 拦截器
|
|
20
|
+
loadInterceptors(interceptors, { router, store, i18n, message })
|
|
21
|
+
// 加载路由
|
|
22
|
+
loadRoutes()
|
|
23
|
+
// 加载路由守卫
|
|
24
|
+
loadGuards(guards, { router, store, i18n, message })
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export default bootstrap
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import Tooltip from 'ant-design-vue/es/tooltip'
|
|
3
|
-
import { cutStrByFullLength, getStrFullLength } from '@vue2-client/components/_util/util'
|
|
4
|
-
/*
|
|
5
|
-
const isSupportLineClamp = document.body.style.webkitLineClamp !== undefined;
|
|
6
|
-
|
|
7
|
-
const TooltipOverlayStyle = {
|
|
8
|
-
overflowWrap: 'break-word',
|
|
9
|
-
wordWrap: 'break-word',
|
|
10
|
-
};
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
name: 'Ellipsis',
|
|
15
|
-
components: {
|
|
16
|
-
Tooltip
|
|
17
|
-
},
|
|
18
|
-
props: {
|
|
19
|
-
prefixCls: {
|
|
20
|
-
type: String,
|
|
21
|
-
default: 'ant-pro-ellipsis'
|
|
22
|
-
},
|
|
23
|
-
tooltip: {
|
|
24
|
-
type: Boolean
|
|
25
|
-
},
|
|
26
|
-
length: {
|
|
27
|
-
type: Number,
|
|
28
|
-
required: true
|
|
29
|
-
},
|
|
30
|
-
lines: {
|
|
31
|
-
type: Number,
|
|
32
|
-
default: 1
|
|
33
|
-
},
|
|
34
|
-
fullWidthRecognition: {
|
|
35
|
-
type: Boolean,
|
|
36
|
-
default: false
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
methods: {
|
|
40
|
-
getStrDom (str, fullLength) {
|
|
41
|
-
return (
|
|
42
|
-
<span>{ cutStrByFullLength(str, this.length) + (fullLength > this.length ? '...' : '') }</span>
|
|
43
|
-
)
|
|
44
|
-
},
|
|
45
|
-
getTooltip (fullStr, fullLength) {
|
|
46
|
-
return (
|
|
47
|
-
<Tooltip>
|
|
48
|
-
<template slot="title">{ fullStr }</template>
|
|
49
|
-
{ this.getStrDom(fullStr, fullLength) }
|
|
50
|
-
</Tooltip>
|
|
51
|
-
)
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
|
-
render () {
|
|
55
|
-
const { tooltip, length } = this.$props
|
|
56
|
-
const str = this.$slots.default.map(vNode => vNode.text).join('')
|
|
57
|
-
const fullLength = getStrFullLength(str)
|
|
58
|
-
const strDom = tooltip && fullLength > length ? this.getTooltip(str, fullLength) : this.getStrDom(str, fullLength)
|
|
59
|
-
return (
|
|
60
|
-
strDom
|
|
61
|
-
)
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
</script>
|
|
1
|
+
<script>
|
|
2
|
+
import Tooltip from 'ant-design-vue/es/tooltip'
|
|
3
|
+
import { cutStrByFullLength, getStrFullLength } from '@vue2-client/components/_util/util'
|
|
4
|
+
/*
|
|
5
|
+
const isSupportLineClamp = document.body.style.webkitLineClamp !== undefined;
|
|
6
|
+
|
|
7
|
+
const TooltipOverlayStyle = {
|
|
8
|
+
overflowWrap: 'break-word',
|
|
9
|
+
wordWrap: 'break-word',
|
|
10
|
+
};
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export default {
|
|
14
|
+
name: 'Ellipsis',
|
|
15
|
+
components: {
|
|
16
|
+
Tooltip
|
|
17
|
+
},
|
|
18
|
+
props: {
|
|
19
|
+
prefixCls: {
|
|
20
|
+
type: String,
|
|
21
|
+
default: 'ant-pro-ellipsis'
|
|
22
|
+
},
|
|
23
|
+
tooltip: {
|
|
24
|
+
type: Boolean
|
|
25
|
+
},
|
|
26
|
+
length: {
|
|
27
|
+
type: Number,
|
|
28
|
+
required: true
|
|
29
|
+
},
|
|
30
|
+
lines: {
|
|
31
|
+
type: Number,
|
|
32
|
+
default: 1
|
|
33
|
+
},
|
|
34
|
+
fullWidthRecognition: {
|
|
35
|
+
type: Boolean,
|
|
36
|
+
default: false
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
methods: {
|
|
40
|
+
getStrDom (str, fullLength) {
|
|
41
|
+
return (
|
|
42
|
+
<span>{ cutStrByFullLength(str, this.length) + (fullLength > this.length ? '...' : '') }</span>
|
|
43
|
+
)
|
|
44
|
+
},
|
|
45
|
+
getTooltip (fullStr, fullLength) {
|
|
46
|
+
return (
|
|
47
|
+
<Tooltip>
|
|
48
|
+
<template slot="title">{ fullStr }</template>
|
|
49
|
+
{ this.getStrDom(fullStr, fullLength) }
|
|
50
|
+
</Tooltip>
|
|
51
|
+
)
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
render () {
|
|
55
|
+
const { tooltip, length } = this.$props
|
|
56
|
+
const str = this.$slots.default.map(vNode => vNode.text).join('')
|
|
57
|
+
const fullLength = getStrFullLength(str)
|
|
58
|
+
const strDom = tooltip && fullLength > length ? this.getTooltip(str, fullLength) : this.getStrDom(str, fullLength)
|
|
59
|
+
return (
|
|
60
|
+
strDom
|
|
61
|
+
)
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
</script>
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
# Ellipsis 文本自动省略号
|
|
2
|
-
|
|
3
|
-
文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
引用方式:
|
|
8
|
-
|
|
9
|
-
```javascript
|
|
10
|
-
import Ellipsis from '@vue2-client/components/Ellipsis'
|
|
11
|
-
|
|
12
|
-
export default {
|
|
13
|
-
components: {
|
|
14
|
-
Ellipsis
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
## 代码演示 [demo](https://pro.loacg.com/test/home)
|
|
22
|
-
|
|
23
|
-
```html
|
|
24
|
-
<ellipsis :length="100" tooltip>
|
|
25
|
-
There were injuries alleged in three cases in 2015, and a
|
|
26
|
-
fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
|
|
27
|
-
</ellipsis>
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
## API
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
参数 | 说明 | 类型 | 默认值
|
|
36
|
-
----|------|-----|------
|
|
37
|
-
tooltip | 移动到文本展示完整内容的提示 | boolean | -
|
|
38
|
-
length | 在按照长度截取下的文本最大字符数,超过则截取省略 | number | -
|
|
1
|
+
# Ellipsis 文本自动省略号
|
|
2
|
+
|
|
3
|
+
文本过长自动处理省略号,支持按照文本长度和最大行数两种方式截取。
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
引用方式:
|
|
8
|
+
|
|
9
|
+
```javascript
|
|
10
|
+
import Ellipsis from '@vue2-client/components/Ellipsis'
|
|
11
|
+
|
|
12
|
+
export default {
|
|
13
|
+
components: {
|
|
14
|
+
Ellipsis
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## 代码演示 [demo](https://pro.loacg.com/test/home)
|
|
22
|
+
|
|
23
|
+
```html
|
|
24
|
+
<ellipsis :length="100" tooltip>
|
|
25
|
+
There were injuries alleged in three cases in 2015, and a
|
|
26
|
+
fourth incident in September, according to the safety recall report. After meeting with US regulators in October, the firm decided to issue a voluntary recall.
|
|
27
|
+
</ellipsis>
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
## API
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
参数 | 说明 | 类型 | 默认值
|
|
36
|
+
----|------|-----|------
|
|
37
|
+
tooltip | 移动到文本展示完整内容的提示 | boolean | -
|
|
38
|
+
length | 在按照长度截取下的文本最大字符数,超过则截取省略 | number | -
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
# NumberInfo 数据文本
|
|
2
|
-
|
|
3
|
-
常用在数据卡片中,用于突出展示某个业务数据。
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
引用方式:
|
|
8
|
-
|
|
9
|
-
```javascript
|
|
10
|
-
import NumberInfo from '@vue2-client/components/NumberInfo'
|
|
11
|
-
|
|
12
|
-
export default {
|
|
13
|
-
components: {
|
|
14
|
-
NumberInfo
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
## 代码演示 [demo](https://pro.loacg.com/test/home)
|
|
22
|
-
|
|
23
|
-
```html
|
|
24
|
-
<number-info
|
|
25
|
-
:sub-title="() => { return 'Visits this week' }"
|
|
26
|
-
:total="12321"
|
|
27
|
-
status="up"
|
|
28
|
-
:sub-total="17.1"></number-info>
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
## API
|
|
34
|
-
|
|
35
|
-
参数 | 说明 | 类型 | 默认值
|
|
36
|
-
----|------|-----|------
|
|
37
|
-
title | 标题 | ReactNode\|string | -
|
|
38
|
-
subTitle | 子标题 | ReactNode\|string | -
|
|
39
|
-
total | 总量 | ReactNode\|string | -
|
|
40
|
-
subTotal | 子总量 | ReactNode\|string | -
|
|
41
|
-
status | 增加状态 | 'up \| down' | -
|
|
42
|
-
theme | 状态样式 | string | 'light'
|
|
43
|
-
gap | 设置数字和描述之间的间距(像素)| number | 8
|
|
1
|
+
# NumberInfo 数据文本
|
|
2
|
+
|
|
3
|
+
常用在数据卡片中,用于突出展示某个业务数据。
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
引用方式:
|
|
8
|
+
|
|
9
|
+
```javascript
|
|
10
|
+
import NumberInfo from '@vue2-client/components/NumberInfo'
|
|
11
|
+
|
|
12
|
+
export default {
|
|
13
|
+
components: {
|
|
14
|
+
NumberInfo
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## 代码演示 [demo](https://pro.loacg.com/test/home)
|
|
22
|
+
|
|
23
|
+
```html
|
|
24
|
+
<number-info
|
|
25
|
+
:sub-title="() => { return 'Visits this week' }"
|
|
26
|
+
:total="12321"
|
|
27
|
+
status="up"
|
|
28
|
+
:sub-total="17.1"></number-info>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## API
|
|
34
|
+
|
|
35
|
+
参数 | 说明 | 类型 | 默认值
|
|
36
|
+
----|------|-----|------
|
|
37
|
+
title | 标题 | ReactNode\|string | -
|
|
38
|
+
subTitle | 子标题 | ReactNode\|string | -
|
|
39
|
+
total | 总量 | ReactNode\|string | -
|
|
40
|
+
subTotal | 子总量 | ReactNode\|string | -
|
|
41
|
+
status | 增加状态 | 'up \| down' | -
|
|
42
|
+
theme | 状态样式 | string | 'light'
|
|
43
|
+
gap | 设置数字和描述之间的间距(像素)| number | 8
|