@ibiz-template/vue3-util 0.0.3-beta.5 → 0.0.4-beta.1
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/dist/system/index.system.js +1 -1
- package/out/index.d.ts +0 -1
- package/out/index.d.ts.map +1 -1
- package/out/index.js +0 -1
- package/out/use/index.d.ts +0 -3
- package/out/use/index.d.ts.map +1 -1
- package/out/use/index.js +0 -3
- package/out/use/vue/vue.d.ts +14 -1
- package/out/use/vue/vue.d.ts.map +1 -1
- package/out/use/vue/vue.js +17 -1
- package/out/util/route/route.d.ts +12 -13
- package/out/util/route/route.d.ts.map +1 -1
- package/out/util/route/route.js +70 -71
- package/package.json +7 -7
- package/src/index.ts +0 -1
- package/src/use/index.ts +0 -3
- package/src/use/vue/vue.ts +20 -0
- package/src/util/route/route.ts +82 -78
- package/out/props/common.d.ts +0 -19
- package/out/props/common.d.ts.map +0 -1
- package/out/props/common.js +0 -23
- package/out/props/editor/autocomplete.d.ts +0 -55
- package/out/props/editor/autocomplete.d.ts.map +0 -1
- package/out/props/editor/autocomplete.js +0 -25
- package/out/props/editor/check-box-list.d.ts +0 -55
- package/out/props/editor/check-box-list.d.ts.map +0 -1
- package/out/props/editor/check-box-list.js +0 -25
- package/out/props/editor/check-box.d.ts +0 -55
- package/out/props/editor/check-box.d.ts.map +0 -1
- package/out/props/editor/check-box.js +0 -25
- package/out/props/editor/common.d.ts +0 -71
- package/out/props/editor/common.d.ts.map +0 -1
- package/out/props/editor/common.js +0 -77
- package/out/props/editor/data-picker.d.ts +0 -64
- package/out/props/editor/data-picker.d.ts.map +0 -1
- package/out/props/editor/data-picker.js +0 -25
- package/out/props/editor/date-picker.d.ts +0 -55
- package/out/props/editor/date-picker.d.ts.map +0 -1
- package/out/props/editor/date-picker.js +0 -25
- package/out/props/editor/dropdown-list.d.ts +0 -55
- package/out/props/editor/dropdown-list.d.ts.map +0 -1
- package/out/props/editor/dropdown-list.js +0 -25
- package/out/props/editor/index.d.ts +0 -19
- package/out/props/editor/index.d.ts.map +0 -1
- package/out/props/editor/index.js +0 -18
- package/out/props/editor/list-box.d.ts +0 -55
- package/out/props/editor/list-box.d.ts.map +0 -1
- package/out/props/editor/list-box.js +0 -25
- package/out/props/editor/number-range.d.ts +0 -51
- package/out/props/editor/number-range.d.ts.map +0 -1
- package/out/props/editor/number-range.js +0 -21
- package/out/props/editor/radio-button-list.d.ts +0 -55
- package/out/props/editor/radio-button-list.d.ts.map +0 -1
- package/out/props/editor/radio-button-list.js +0 -25
- package/out/props/editor/rate.d.ts +0 -51
- package/out/props/editor/rate.d.ts.map +0 -1
- package/out/props/editor/rate.js +0 -21
- package/out/props/editor/raw.d.ts +0 -51
- package/out/props/editor/raw.d.ts.map +0 -1
- package/out/props/editor/raw.js +0 -21
- package/out/props/editor/slider.d.ts +0 -51
- package/out/props/editor/slider.d.ts.map +0 -1
- package/out/props/editor/slider.js +0 -21
- package/out/props/editor/span.d.ts +0 -55
- package/out/props/editor/span.d.ts.map +0 -1
- package/out/props/editor/span.js +0 -25
- package/out/props/editor/stepper.d.ts +0 -51
- package/out/props/editor/stepper.d.ts.map +0 -1
- package/out/props/editor/stepper.js +0 -21
- package/out/props/editor/switch.d.ts +0 -51
- package/out/props/editor/switch.d.ts.map +0 -1
- package/out/props/editor/switch.js +0 -21
- package/out/props/editor/text-box.d.ts +0 -108
- package/out/props/editor/text-box.d.ts.map +0 -1
- package/out/props/editor/text-box.js +0 -49
- package/out/props/editor/upload.d.ts +0 -55
- package/out/props/editor/upload.d.ts.map +0 -1
- package/out/props/editor/upload.js +0 -25
- package/out/props/index.d.ts +0 -3
- package/out/props/index.d.ts.map +0 -1
- package/out/props/index.js +0 -2
- package/out/use/grid-cell-edit/grid-cell-edit.d.ts +0 -40
- package/out/use/grid-cell-edit/grid-cell-edit.d.ts.map +0 -1
- package/out/use/grid-cell-edit/grid-cell-edit.js +0 -122
- package/out/use/view/index.d.ts +0 -24
- package/out/use/view/index.d.ts.map +0 -1
- package/out/use/view/index.js +0 -23
- package/out/use/view/use-app-portal-view/use-app-portal-view.d.ts +0 -12
- package/out/use/view/use-app-portal-view/use-app-portal-view.d.ts.map +0 -1
- package/out/use/view/use-app-portal-view/use-app-portal-view.js +0 -16
- package/out/use/view/use-dashboard-view/use-dashboard-view.d.ts +0 -12
- package/out/use/view/use-dashboard-view/use-dashboard-view.d.ts.map +0 -1
- package/out/use/view/use-dashboard-view/use-dashboard-view.js +0 -16
- package/out/use/view/use-dataview-view/use-dataview-view.d.ts +0 -12
- package/out/use/view/use-dataview-view/use-dataview-view.d.ts.map +0 -1
- package/out/use/view/use-dataview-view/use-dataview-view.js +0 -16
- package/out/use/view/use-edit-view/use-edit-view.d.ts +0 -12
- package/out/use/view/use-edit-view/use-edit-view.d.ts.map +0 -1
- package/out/use/view/use-edit-view/use-edit-view.js +0 -16
- package/out/use/view/use-edit-view3/use-edit-view3.d.ts +0 -12
- package/out/use/view/use-edit-view3/use-edit-view3.d.ts.map +0 -1
- package/out/use/view/use-edit-view3/use-edit-view3.js +0 -16
- package/out/use/view/use-grid-exp-view/use-grid-exp-view.d.ts +0 -10
- package/out/use/view/use-grid-exp-view/use-grid-exp-view.d.ts.map +0 -1
- package/out/use/view/use-grid-exp-view/use-grid-exp-view.js +0 -14
- package/out/use/view/use-grid-view/use-grid-view.d.ts +0 -12
- package/out/use/view/use-grid-view/use-grid-view.d.ts.map +0 -1
- package/out/use/view/use-grid-view/use-grid-view.js +0 -16
- package/out/use/view/use-index-view/use-index-view.d.ts +0 -12
- package/out/use/view/use-index-view/use-index-view.d.ts.map +0 -1
- package/out/use/view/use-index-view/use-index-view.js +0 -16
- package/out/use/view/use-kanban-view/use-kanban-view.d.ts +0 -12
- package/out/use/view/use-kanban-view/use-kanban-view.d.ts.map +0 -1
- package/out/use/view/use-kanban-view/use-kanban-view.js +0 -16
- package/out/use/view/use-list-exp-view/use-list-exp-view.d.ts +0 -10
- package/out/use/view/use-list-exp-view/use-list-exp-view.d.ts.map +0 -1
- package/out/use/view/use-list-exp-view/use-list-exp-view.js +0 -14
- package/out/use/view/use-list-view/use-list-view.d.ts +0 -10
- package/out/use/view/use-list-view/use-list-view.d.ts.map +0 -1
- package/out/use/view/use-list-view/use-list-view.js +0 -14
- package/out/use/view/use-mpickup-view/use-mpickup-view.d.ts +0 -12
- package/out/use/view/use-mpickup-view/use-mpickup-view.d.ts.map +0 -1
- package/out/use/view/use-mpickup-view/use-mpickup-view.js +0 -16
- package/out/use/view/use-opt-view/use-opt-view.d.ts +0 -12
- package/out/use/view/use-opt-view/use-opt-view.d.ts.map +0 -1
- package/out/use/view/use-opt-view/use-opt-view.js +0 -16
- package/out/use/view/use-pickup-grid-view/use-pickup-grid-view.d.ts +0 -12
- package/out/use/view/use-pickup-grid-view/use-pickup-grid-view.d.ts.map +0 -1
- package/out/use/view/use-pickup-grid-view/use-pickup-grid-view.js +0 -16
- package/out/use/view/use-pickup-view/use-pickup-view.d.ts +0 -12
- package/out/use/view/use-pickup-view/use-pickup-view.d.ts.map +0 -1
- package/out/use/view/use-pickup-view/use-pickup-view.js +0 -16
- package/out/use/view/use-tab-exp-view/use-tab-exp-view.d.ts +0 -10
- package/out/use/view/use-tab-exp-view/use-tab-exp-view.d.ts.map +0 -1
- package/out/use/view/use-tab-exp-view/use-tab-exp-view.js +0 -14
- package/out/use/view/use-tree-exp-view/use-tree-exp-view.d.ts +0 -10
- package/out/use/view/use-tree-exp-view/use-tree-exp-view.d.ts.map +0 -1
- package/out/use/view/use-tree-exp-view/use-tree-exp-view.js +0 -14
- package/out/use/view/use-view-controller/use-view-controller.d.ts +0 -14
- package/out/use/view/use-view-controller/use-view-controller.d.ts.map +0 -1
- package/out/use/view/use-view-controller/use-view-controller.js +0 -38
- package/out/use/view/use-wf-dyna-action-view/use-wf-dyna-action-view.d.ts +0 -12
- package/out/use/view/use-wf-dyna-action-view/use-wf-dyna-action-view.d.ts.map +0 -1
- package/out/use/view/use-wf-dyna-action-view/use-wf-dyna-action-view.js +0 -16
- package/out/use/view/use-wf-dyna-edit3-view/use-wf-dyna-edit3-view.d.ts +0 -12
- package/out/use/view/use-wf-dyna-edit3-view/use-wf-dyna-edit3-view.d.ts.map +0 -1
- package/out/use/view/use-wf-dyna-edit3-view/use-wf-dyna-edit3-view.js +0 -16
- package/out/use/view/use-wf-dyna-start-view/use-wf-dyna-start-view.d.ts +0 -12
- package/out/use/view/use-wf-dyna-start-view/use-wf-dyna-start-view.d.ts.map +0 -1
- package/out/use/view/use-wf-dyna-start-view/use-wf-dyna-start-view.js +0 -16
- package/out/use/view/use-wf-step-trace-view/use-wf-step-trace-view.d.ts +0 -13
- package/out/use/view/use-wf-step-trace-view/use-wf-step-trace-view.d.ts.map +0 -1
- package/out/use/view/use-wf-step-trace-view/use-wf-step-trace-view.js +0 -17
- package/out/use/view/use-wizard-view/use-wizard-view.d.ts +0 -12
- package/out/use/view/use-wizard-view/use-wizard-view.d.ts.map +0 -1
- package/out/use/view/use-wizard-view/use-wizard-view.js +0 -16
- package/out/use/widget/index.d.ts +0 -16
- package/out/use/widget/index.d.ts.map +0 -1
- package/out/use/widget/index.js +0 -15
- package/out/use/widget/use-app-menu-controller/use-app-menu-controller.d.ts +0 -16
- package/out/use/widget/use-app-menu-controller/use-app-menu-controller.d.ts.map +0 -1
- package/out/use/widget/use-app-menu-controller/use-app-menu-controller.js +0 -18
- package/out/use/widget/use-control-controller/use-control-controller.d.ts +0 -13
- package/out/use/widget/use-control-controller/use-control-controller.d.ts.map +0 -1
- package/out/use/widget/use-control-controller/use-control-controller.js +0 -29
- package/out/use/widget/use-dashboard-controller/use-dashboard-controller.d.ts +0 -5
- package/out/use/widget/use-dashboard-controller/use-dashboard-controller.d.ts.map +0 -1
- package/out/use/widget/use-dashboard-controller/use-dashboard-controller.js +0 -8
- package/out/use/widget/use-dataview-controller/use-dataview-controller.d.ts +0 -16
- package/out/use/widget/use-dataview-controller/use-dataview-controller.d.ts.map +0 -1
- package/out/use/widget/use-dataview-controller/use-dataview-controller.js +0 -22
- package/out/use/widget/use-edit-form-controller/use-edit-form-controller.d.ts +0 -16
- package/out/use/widget/use-edit-form-controller/use-edit-form-controller.d.ts.map +0 -1
- package/out/use/widget/use-edit-form-controller/use-edit-form-controller.js +0 -19
- package/out/use/widget/use-grid-controller/use-grid-controller.d.ts +0 -16
- package/out/use/widget/use-grid-controller/use-grid-controller.d.ts.map +0 -1
- package/out/use/widget/use-grid-controller/use-grid-controller.js +0 -25
- package/out/use/widget/use-kanban-controller/use-kanban-controller.d.ts +0 -16
- package/out/use/widget/use-kanban-controller/use-kanban-controller.d.ts.map +0 -1
- package/out/use/widget/use-kanban-controller/use-kanban-controller.js +0 -22
- package/out/use/widget/use-layout-panel-controller/use-layout-panel-controller.d.ts +0 -14
- package/out/use/widget/use-layout-panel-controller/use-layout-panel-controller.d.ts.map +0 -1
- package/out/use/widget/use-layout-panel-controller/use-layout-panel-controller.js +0 -20
- package/out/use/widget/use-list-controller/use-list-controller.d.ts +0 -16
- package/out/use/widget/use-list-controller/use-list-controller.d.ts.map +0 -1
- package/out/use/widget/use-list-controller/use-list-controller.js +0 -25
- package/out/use/widget/use-pickup-view-panel-controller/use-pickup-view-panel-controller.d.ts +0 -5
- package/out/use/widget/use-pickup-view-panel-controller/use-pickup-view-panel-controller.d.ts.map +0 -1
- package/out/use/widget/use-pickup-view-panel-controller/use-pickup-view-panel-controller.js +0 -8
- package/out/use/widget/use-search-form-controller/use-search-form-controller.d.ts +0 -16
- package/out/use/widget/use-search-form-controller/use-search-form-controller.d.ts.map +0 -1
- package/out/use/widget/use-search-form-controller/use-search-form-controller.js +0 -19
- package/out/use/widget/use-tree-controller/use-tree-controller.d.ts +0 -15
- package/out/use/widget/use-tree-controller/use-tree-controller.d.ts.map +0 -1
- package/out/use/widget/use-tree-controller/use-tree-controller.js +0 -21
- package/out/use/widget/use-view-layout-panel-controller/use-view-layout-panel-controller.d.ts +0 -14
- package/out/use/widget/use-view-layout-panel-controller/use-view-layout-panel-controller.d.ts.map +0 -1
- package/out/use/widget/use-view-layout-panel-controller/use-view-layout-panel-controller.js +0 -17
- package/out/use/widget/use-view-panel-controller/use-view-panel-controller.d.ts +0 -5
- package/out/use/widget/use-view-panel-controller/use-view-panel-controller.d.ts.map +0 -1
- package/out/use/widget/use-view-panel-controller/use-view-panel-controller.js +0 -8
- package/out/use/widget/use-wizard-panel-controller/use-wizard-panel-controller.d.ts +0 -17
- package/out/use/widget/use-wizard-panel-controller/use-wizard-panel-controller.d.ts.map +0 -1
- package/out/use/widget/use-wizard-panel-controller/use-wizard-panel-controller.js +0 -19
- package/src/props/common.ts +0 -30
- package/src/props/editor/autocomplete.ts +0 -28
- package/src/props/editor/check-box-list.ts +0 -28
- package/src/props/editor/check-box.ts +0 -28
- package/src/props/editor/common.ts +0 -83
- package/src/props/editor/data-picker.ts +0 -28
- package/src/props/editor/date-picker.ts +0 -28
- package/src/props/editor/dropdown-list.ts +0 -28
- package/src/props/editor/index.ts +0 -18
- package/src/props/editor/list-box.ts +0 -35
- package/src/props/editor/number-range.ts +0 -24
- package/src/props/editor/radio-button-list.ts +0 -28
- package/src/props/editor/rate.ts +0 -24
- package/src/props/editor/raw.ts +0 -24
- package/src/props/editor/slider.ts +0 -24
- package/src/props/editor/span.ts +0 -28
- package/src/props/editor/stepper.ts +0 -24
- package/src/props/editor/switch.ts +0 -24
- package/src/props/editor/text-box.ts +0 -54
- package/src/props/editor/upload.ts +0 -28
- package/src/props/index.ts +0 -2
- package/src/use/grid-cell-edit/grid-cell-edit.ts +0 -188
- package/src/use/view/index.ts +0 -23
- package/src/use/view/use-app-portal-view/use-app-portal-view.ts +0 -21
- package/src/use/view/use-dashboard-view/use-dashboard-view.ts +0 -21
- package/src/use/view/use-dataview-view/use-dataview-view.ts +0 -21
- package/src/use/view/use-edit-view/use-edit-view.ts +0 -19
- package/src/use/view/use-edit-view3/use-edit-view3.ts +0 -19
- package/src/use/view/use-grid-exp-view/use-grid-exp-view.ts +0 -17
- package/src/use/view/use-grid-view/use-grid-view.ts +0 -19
- package/src/use/view/use-index-view/use-index-view.ts +0 -17
- package/src/use/view/use-kanban-view/use-kanban-view.ts +0 -19
- package/src/use/view/use-list-exp-view/use-list-exp-view.ts +0 -17
- package/src/use/view/use-list-view/use-list-view.ts +0 -17
- package/src/use/view/use-mpickup-view/use-mpickup-view.ts +0 -19
- package/src/use/view/use-opt-view/use-opt-view.ts +0 -19
- package/src/use/view/use-pickup-grid-view/use-pickup-grid-view.ts +0 -21
- package/src/use/view/use-pickup-view/use-pickup-view.ts +0 -19
- package/src/use/view/use-tab-exp-view/use-tab-exp-view.ts +0 -17
- package/src/use/view/use-tree-exp-view/use-tree-exp-view.ts +0 -17
- package/src/use/view/use-view-controller/use-view-controller.ts +0 -49
- package/src/use/view/use-wf-dyna-action-view/use-wf-dyna-action-view.ts +0 -21
- package/src/use/view/use-wf-dyna-edit3-view/use-wf-dyna-edit3-view.ts +0 -21
- package/src/use/view/use-wf-dyna-start-view/use-wf-dyna-start-view.ts +0 -21
- package/src/use/view/use-wf-step-trace-view/use-wf-step-trace-view.ts +0 -22
- package/src/use/view/use-wizard-view/use-wizard-view.ts +0 -19
- package/src/use/widget/index.ts +0 -15
- package/src/use/widget/use-app-menu-controller/use-app-menu-controller.ts +0 -25
- package/src/use/widget/use-control-controller/use-control-controller.ts +0 -40
- package/src/use/widget/use-dashboard-controller/use-dashboard-controller.ts +0 -15
- package/src/use/widget/use-dataview-controller/use-dataview-controller.ts +0 -29
- package/src/use/widget/use-edit-form-controller/use-edit-form-controller.ts +0 -26
- package/src/use/widget/use-grid-controller/use-grid-controller.ts +0 -33
- package/src/use/widget/use-kanban-controller/use-kanban-controller.ts +0 -29
- package/src/use/widget/use-layout-panel-controller/use-layout-panel-controller.ts +0 -27
- package/src/use/widget/use-list-controller/use-list-controller.ts +0 -32
- package/src/use/widget/use-pickup-view-panel-controller/use-pickup-view-panel-controller.ts +0 -15
- package/src/use/widget/use-search-form-controller/use-search-form-controller.ts +0 -26
- package/src/use/widget/use-tree-controller/use-tree-controller.ts +0 -28
- package/src/use/widget/use-view-layout-panel-controller/use-view-layout-panel-controller.ts +0 -24
- package/src/use/widget/use-view-panel-controller/use-view-panel-controller.ts +0 -15
- package/src/use/widget/use-wizard-panel-controller/use-wizard-panel-controller.ts +0 -26
package/out/util/route/route.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { notNilEmpty } from 'qx-util';
|
|
2
2
|
import { RuntimeError } from '@ibiz-template/core';
|
|
3
3
|
import qs from 'qs';
|
|
4
|
-
import { calcRouteContext } from '@ibiz-template/runtime';
|
|
5
4
|
/**
|
|
6
5
|
* 获取自身的路由上下文,排除了部分不需要路由携带的参数
|
|
7
6
|
*
|
|
@@ -27,14 +26,13 @@ export function getOwnRouteContext(context) {
|
|
|
27
26
|
* @author lxm
|
|
28
27
|
* @date 2022-08-17 21:08:00
|
|
29
28
|
* @export
|
|
30
|
-
* @param {
|
|
29
|
+
* @param {IAppView} appView 视图模型
|
|
31
30
|
* @param {Route} route 路由对象
|
|
32
|
-
* @param {(
|
|
31
|
+
* @param {(IContext | undefined)} [context] 上下文对象
|
|
33
32
|
* @param {(IParams | undefined)} [_params] 视图参数
|
|
34
33
|
* @returns {*} {string}
|
|
35
34
|
*/
|
|
36
35
|
export function generateRoutePath(appView, route, context, params) {
|
|
37
|
-
var _a;
|
|
38
36
|
const routePath = route2routePath(route);
|
|
39
37
|
// 如果上下文存在toRouteLevel时,使用上下文的层级,否则是第二级路由
|
|
40
38
|
let level = 2;
|
|
@@ -54,7 +52,7 @@ export function generateRoutePath(appView, route, context, params) {
|
|
|
54
52
|
delete context.currentSrfNav;
|
|
55
53
|
}
|
|
56
54
|
// 重定向视图跳转的一级首页路由
|
|
57
|
-
if (
|
|
55
|
+
if (route.fullPath.startsWith('/appredirectview')) {
|
|
58
56
|
if (params === null || params === void 0 ? void 0 : params.srfindexname) {
|
|
59
57
|
routePath.pathNodes[0].viewName = params.srfindexname;
|
|
60
58
|
delete params.srfindexname;
|
|
@@ -70,26 +68,27 @@ export function generateRoutePath(appView, route, context, params) {
|
|
|
70
68
|
params,
|
|
71
69
|
});
|
|
72
70
|
// 计算二级视图的资源路径加到index后面
|
|
73
|
-
const codeName =
|
|
74
|
-
if (level === 2 && codeName) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
71
|
+
// const codeName = appView.getPSAppDataEntity()?.codeName;
|
|
72
|
+
// if (level === 2 && codeName) {
|
|
73
|
+
// const app = ibiz.hub.getApp(appView.getPSModelService().app);
|
|
74
|
+
// const paths = app.resourcePathUtil.calcPaths(codeName);
|
|
75
|
+
// const resContext = calcRouteContext(context, paths);
|
|
76
|
+
// if (!isNilOrEmpty(resContext)) {
|
|
77
|
+
// // 资源路径不为空,二级视图的上下文删掉多余的资源上下文
|
|
78
|
+
// routePath.pathNodes[0].context = resContext;
|
|
79
|
+
// Object.keys(resContext).forEach(key => {
|
|
80
|
+
// const currentNode = routePath.pathNodes[level - 1];
|
|
81
|
+
// if (
|
|
82
|
+
// currentNode.context &&
|
|
83
|
+
// Object.prototype.hasOwnProperty.call(currentNode.context, key)
|
|
84
|
+
// ) {
|
|
85
|
+
// delete currentNode.context[key];
|
|
86
|
+
// }
|
|
87
|
+
// });
|
|
88
|
+
// } else {
|
|
89
|
+
// routePath.pathNodes[0].context = undefined;
|
|
90
|
+
// }
|
|
91
|
+
// }
|
|
93
92
|
// 视图参数通过query传递
|
|
94
93
|
return { path: routePath2string(routePath) };
|
|
95
94
|
}
|
|
@@ -97,62 +96,58 @@ export function generateRoutePath(appView, route, context, params) {
|
|
|
97
96
|
* 获取视图模型的codeName(小写)
|
|
98
97
|
*
|
|
99
98
|
* @export
|
|
100
|
-
* @param {
|
|
99
|
+
* @param {IAppView} model
|
|
101
100
|
* @returns {*}
|
|
102
101
|
*/
|
|
103
102
|
export function getViewName(model) {
|
|
104
|
-
|
|
105
|
-
? model.codeName
|
|
106
|
-
: (model.refM.resource || '') + model.refM.view;
|
|
107
|
-
return viewName.toLowerCase();
|
|
103
|
+
return model.codeName.toLowerCase();
|
|
108
104
|
}
|
|
109
105
|
/**
|
|
110
106
|
* 在单个应用里
|
|
111
107
|
* 通过视图的codeName找到视图模型
|
|
112
108
|
*
|
|
113
|
-
* @param {(
|
|
109
|
+
* @param {(IApplication | ISubAppRef)} appModel 主应用或子应用
|
|
114
110
|
* @param {string} viewCodeName 视图名称小写
|
|
115
111
|
* @returns {*}
|
|
116
112
|
*/
|
|
117
|
-
export function findViewByName(
|
|
118
|
-
|
|
119
|
-
return (
|
|
120
|
-
|
|
121
|
-
|
|
113
|
+
export function findViewByName(_appModel, _viewCodeName) {
|
|
114
|
+
// return appModel.getAllPSAppViews()?.find((model: IAppView) => {
|
|
115
|
+
// return getViewName(model) === viewCodeName;
|
|
116
|
+
// });
|
|
117
|
+
return undefined;
|
|
122
118
|
}
|
|
123
119
|
/**
|
|
124
120
|
* 从子应用和主应用里
|
|
125
121
|
* 通过视图的codeName找视图模型
|
|
126
122
|
*
|
|
127
|
-
* @param {
|
|
123
|
+
* @param {IApplication} appModel 主应用
|
|
128
124
|
* @param {string} viewCodeName 视图名称小写
|
|
129
125
|
* @returns {*}
|
|
130
126
|
*/
|
|
131
|
-
export function findView(
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
// index
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
return viewModel;
|
|
127
|
+
export function findView(_appModel, _viewCodeName) {
|
|
128
|
+
// let viewModel: IAppView | null | undefined;
|
|
129
|
+
// viewCodeName = viewCodeName.toLowerCase();
|
|
130
|
+
// // index找默认首页视图,其他匹配codeName
|
|
131
|
+
// if (viewCodeName === 'index') {
|
|
132
|
+
// viewModel = appModel.getDefaultPSAppIndexView();
|
|
133
|
+
// } else {
|
|
134
|
+
// // 先查找子应用,找到则不继续找了,优先从最后面的子应用找起
|
|
135
|
+
// if (appModel.getAllPSSubAppRefs()?.length) {
|
|
136
|
+
// appModel
|
|
137
|
+
// .getAllPSSubAppRefs()!
|
|
138
|
+
// .reverse()
|
|
139
|
+
// .find(sub => {
|
|
140
|
+
// viewModel = findViewByName(sub, viewCodeName);
|
|
141
|
+
// return !!viewModel;
|
|
142
|
+
// });
|
|
143
|
+
// }
|
|
144
|
+
// // 子应用里没有就在主应用里找。
|
|
145
|
+
// if (!viewModel) {
|
|
146
|
+
// viewModel = findViewByName(appModel, viewCodeName);
|
|
147
|
+
// }
|
|
148
|
+
// }
|
|
149
|
+
// return viewModel;
|
|
150
|
+
return undefined;
|
|
156
151
|
}
|
|
157
152
|
/**
|
|
158
153
|
* 解析路由获取对应视图数据
|
|
@@ -160,7 +155,7 @@ export function findView(appModel, viewCodeName) {
|
|
|
160
155
|
* @author lxm
|
|
161
156
|
* @date 2022-08-17 22:08:51
|
|
162
157
|
* @export
|
|
163
|
-
* @param {
|
|
158
|
+
* @param {IApplication} appModel 视图模型
|
|
164
159
|
* @param {Route} route 路由对象
|
|
165
160
|
* @param {number} level 层级
|
|
166
161
|
* @returns {*} {IRouteViewData}
|
|
@@ -180,8 +175,6 @@ export function parseRouteViewData(appModel, route, level) {
|
|
|
180
175
|
if (!viewModel) {
|
|
181
176
|
throw new RuntimeError(`找不到视图${viewCodeName}`);
|
|
182
177
|
}
|
|
183
|
-
const modelPath = viewModel.modelPath;
|
|
184
|
-
const { viewType } = viewModel.refM;
|
|
185
178
|
// !解析上下文参数,整合当前层级之前所有的上下文参数
|
|
186
179
|
const context = {};
|
|
187
180
|
// 合并appData里的应用上下文
|
|
@@ -203,8 +196,7 @@ export function parseRouteViewData(appModel, route, level) {
|
|
|
203
196
|
// 最后一级路由对应的视图才会解析视图参数
|
|
204
197
|
const { params, srfnav } = routePath.pathNodes[level - 1];
|
|
205
198
|
return {
|
|
206
|
-
|
|
207
|
-
viewType,
|
|
199
|
+
viewType: '',
|
|
208
200
|
context,
|
|
209
201
|
params,
|
|
210
202
|
srfnav,
|
|
@@ -238,7 +230,10 @@ export function route2routePath(route) {
|
|
|
238
230
|
}
|
|
239
231
|
else {
|
|
240
232
|
// 首页上下文要解析
|
|
241
|
-
params = qs.parse(paramsStr, {
|
|
233
|
+
params = qs.parse(paramsStr, {
|
|
234
|
+
strictNullHandling: true,
|
|
235
|
+
delimiter: ';',
|
|
236
|
+
});
|
|
242
237
|
}
|
|
243
238
|
// 路由参数存在的时候,解析里面的上下文。
|
|
244
239
|
if (params) {
|
|
@@ -267,6 +262,7 @@ export function route2routePath(route) {
|
|
|
267
262
|
if (route.params.appContext &&
|
|
268
263
|
route.params.appContext !== ibiz.env.routePlaceholder) {
|
|
269
264
|
appContext = qs.parse(route.params.appContext, {
|
|
265
|
+
strictNullHandling: true,
|
|
270
266
|
delimiter: ';',
|
|
271
267
|
});
|
|
272
268
|
}
|
|
@@ -285,7 +281,10 @@ export function routePath2string(routePath) {
|
|
|
285
281
|
let pathStr = '';
|
|
286
282
|
// 应用上下文
|
|
287
283
|
if (routePath.appContext) {
|
|
288
|
-
pathStr += `/${qs.stringify(routePath.appContext, {
|
|
284
|
+
pathStr += `/${qs.stringify(routePath.appContext, {
|
|
285
|
+
delimiter: ';',
|
|
286
|
+
strictNullHandling: true,
|
|
287
|
+
})}`;
|
|
289
288
|
}
|
|
290
289
|
else {
|
|
291
290
|
pathStr += `/${ibiz.env.routePlaceholder}`;
|
|
@@ -314,7 +313,7 @@ export function routePath2string(routePath) {
|
|
|
314
313
|
}
|
|
315
314
|
// 把路由参数转换到路由路径上去
|
|
316
315
|
pathStr +=
|
|
317
|
-
qs.stringify(routeParams, { delimiter: ';' }) ||
|
|
316
|
+
qs.stringify(routeParams, { delimiter: ';', strictNullHandling: true }) ||
|
|
318
317
|
ibiz.env.routePlaceholder;
|
|
319
318
|
});
|
|
320
319
|
return pathStr;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/vue3-util",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4-beta.1",
|
|
4
4
|
"description": "vue3 工具包",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "out/index.js",
|
|
@@ -29,25 +29,25 @@
|
|
|
29
29
|
"author": "chitanda",
|
|
30
30
|
"license": "MIT",
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@ibiz-template/core": "^0.0.
|
|
33
|
-
"@ibiz-template/
|
|
34
|
-
"@ibiz-
|
|
32
|
+
"@ibiz-template/core": "^0.0.4-beta.1",
|
|
33
|
+
"@ibiz-template/runtime": "^0.0.4-beta.1",
|
|
34
|
+
"@ibiz/model-core": "^0.0.2",
|
|
35
35
|
"@types/qs": "^6.9.7",
|
|
36
36
|
"qs": "^6.11.1",
|
|
37
37
|
"qx-util": "^0.4.8",
|
|
38
|
-
"ramda": "^0.
|
|
38
|
+
"ramda": "^0.29.0",
|
|
39
39
|
"vue": "^3.2.47",
|
|
40
40
|
"vue-router": "^4.1.6"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
43
43
|
"@ibiz-template/core": "^0.0.3-beta.0",
|
|
44
|
-
"@ibiz-template/model": "^0.0.3-beta.0",
|
|
45
44
|
"@ibiz-template/runtime": "^0.0.3-beta.0",
|
|
45
|
+
"@ibiz/model-core": "^0.0.2",
|
|
46
46
|
"qs": "^6.11.0",
|
|
47
47
|
"qx-util": "^0.4.8",
|
|
48
48
|
"ramda": "^0.28.0",
|
|
49
49
|
"vue": "^3.2.45",
|
|
50
50
|
"vue-router": "^4.1.6"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "2a299785cb6ccc9b25353e77d40d864d94c0c496"
|
|
53
53
|
}
|
package/src/index.ts
CHANGED
package/src/use/index.ts
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
export * from './namespace/namespace';
|
|
2
2
|
export * from './route/route';
|
|
3
|
-
export * from './view';
|
|
4
3
|
export * from './vue/vue';
|
|
5
|
-
export * from './widget';
|
|
6
4
|
export * from './click-outside/click-outside';
|
|
7
5
|
export * from './event/event';
|
|
8
|
-
export * from './grid-cell-edit/grid-cell-edit';
|
package/src/use/vue/vue.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { isFunc } from 'qx-util';
|
|
2
2
|
import {
|
|
3
3
|
ComponentPublicInstance,
|
|
4
|
+
createCommentVNode,
|
|
4
5
|
getCurrentInstance,
|
|
5
6
|
isReactive,
|
|
6
7
|
toRaw,
|
|
8
|
+
VNode,
|
|
7
9
|
watch,
|
|
8
10
|
WatchOptions,
|
|
9
11
|
} from 'vue';
|
|
@@ -120,3 +122,21 @@ export function useForceTogether(
|
|
|
120
122
|
export function useController(controller: IData) {
|
|
121
123
|
controller.force = useForce();
|
|
122
124
|
}
|
|
125
|
+
|
|
126
|
+
/** 全局唯一的空节点 */
|
|
127
|
+
export const EmptyVNode = createCommentVNode('EmptyVNode');
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* 配合EmptyVNode,判断是否是空节点
|
|
131
|
+
* @author lxm
|
|
132
|
+
* @date 2023-03-28 02:20:06
|
|
133
|
+
* @export
|
|
134
|
+
* @param {(VNode[] | VNode)} nodes
|
|
135
|
+
* @return {*} {boolean}
|
|
136
|
+
*/
|
|
137
|
+
export function isEmptyVNode(nodes: VNode[] | VNode) {
|
|
138
|
+
if (!Array.isArray(nodes)) {
|
|
139
|
+
return nodes === EmptyVNode;
|
|
140
|
+
}
|
|
141
|
+
return nodes.length === 1 && nodes[0] === EmptyVNode;
|
|
142
|
+
}
|
package/src/util/route/route.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { notNilEmpty } from 'qx-util';
|
|
2
|
+
import { RuntimeError } from '@ibiz-template/core';
|
|
3
|
+
import { IApplication, IAppView } from '@ibiz/model-core';
|
|
4
4
|
import qs from 'qs';
|
|
5
5
|
import { RouteLocationNormalizedLoaded as Route } from 'vue-router';
|
|
6
|
-
import { calcRouteContext } from '@ibiz-template/runtime';
|
|
7
6
|
import { IRoutePath, IRoutePathNode, IRouteViewData } from '../../interface';
|
|
8
7
|
|
|
9
8
|
/**
|
|
@@ -32,16 +31,16 @@ export function getOwnRouteContext(context: IContext): IParams {
|
|
|
32
31
|
* @author lxm
|
|
33
32
|
* @date 2022-08-17 21:08:00
|
|
34
33
|
* @export
|
|
35
|
-
* @param {
|
|
34
|
+
* @param {IAppView} appView 视图模型
|
|
36
35
|
* @param {Route} route 路由对象
|
|
37
|
-
* @param {(
|
|
36
|
+
* @param {(IContext | undefined)} [context] 上下文对象
|
|
38
37
|
* @param {(IParams | undefined)} [_params] 视图参数
|
|
39
38
|
* @returns {*} {string}
|
|
40
39
|
*/
|
|
41
40
|
export function generateRoutePath(
|
|
42
|
-
appView:
|
|
41
|
+
appView: IAppView,
|
|
43
42
|
route: Route,
|
|
44
|
-
context:
|
|
43
|
+
context: IContext,
|
|
45
44
|
params?: IParams | undefined,
|
|
46
45
|
): { path: string } {
|
|
47
46
|
const routePath = route2routePath(route);
|
|
@@ -66,7 +65,7 @@ export function generateRoutePath(
|
|
|
66
65
|
}
|
|
67
66
|
|
|
68
67
|
// 重定向视图跳转的一级首页路由
|
|
69
|
-
if (
|
|
68
|
+
if (route.fullPath.startsWith('/appredirectview')) {
|
|
70
69
|
if (params?.srfindexname) {
|
|
71
70
|
routePath.pathNodes[0].viewName = params.srfindexname;
|
|
72
71
|
delete params.srfindexname;
|
|
@@ -77,33 +76,33 @@ export function generateRoutePath(
|
|
|
77
76
|
|
|
78
77
|
// 计算目标视图path路径
|
|
79
78
|
routePath.pathNodes.push({
|
|
80
|
-
viewName: appView.codeName
|
|
79
|
+
viewName: appView.codeName!.toLowerCase(),
|
|
81
80
|
context: getOwnRouteContext(context),
|
|
82
81
|
params,
|
|
83
82
|
});
|
|
84
83
|
|
|
85
84
|
// 计算二级视图的资源路径加到index后面
|
|
86
|
-
const codeName = appView.getPSAppDataEntity()?.codeName;
|
|
87
|
-
if (level === 2 && codeName) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
85
|
+
// const codeName = appView.getPSAppDataEntity()?.codeName;
|
|
86
|
+
// if (level === 2 && codeName) {
|
|
87
|
+
// const app = ibiz.hub.getApp(appView.getPSModelService().app);
|
|
88
|
+
// const paths = app.resourcePathUtil.calcPaths(codeName);
|
|
89
|
+
// const resContext = calcRouteContext(context, paths);
|
|
90
|
+
// if (!isNilOrEmpty(resContext)) {
|
|
91
|
+
// // 资源路径不为空,二级视图的上下文删掉多余的资源上下文
|
|
92
|
+
// routePath.pathNodes[0].context = resContext;
|
|
93
|
+
// Object.keys(resContext).forEach(key => {
|
|
94
|
+
// const currentNode = routePath.pathNodes[level - 1];
|
|
95
|
+
// if (
|
|
96
|
+
// currentNode.context &&
|
|
97
|
+
// Object.prototype.hasOwnProperty.call(currentNode.context, key)
|
|
98
|
+
// ) {
|
|
99
|
+
// delete currentNode.context[key];
|
|
100
|
+
// }
|
|
101
|
+
// });
|
|
102
|
+
// } else {
|
|
103
|
+
// routePath.pathNodes[0].context = undefined;
|
|
104
|
+
// }
|
|
105
|
+
// }
|
|
107
106
|
|
|
108
107
|
// 视图参数通过query传递
|
|
109
108
|
|
|
@@ -114,64 +113,66 @@ export function generateRoutePath(
|
|
|
114
113
|
* 获取视图模型的codeName(小写)
|
|
115
114
|
*
|
|
116
115
|
* @export
|
|
117
|
-
* @param {
|
|
116
|
+
* @param {IAppView} model
|
|
118
117
|
* @returns {*}
|
|
119
118
|
*/
|
|
120
|
-
export function getViewName(model:
|
|
121
|
-
|
|
122
|
-
? model.codeName
|
|
123
|
-
: (model.refM.resource || '') + model.refM.view;
|
|
124
|
-
return viewName.toLowerCase();
|
|
119
|
+
export function getViewName(model: IAppView) {
|
|
120
|
+
return model.codeName!.toLowerCase();
|
|
125
121
|
}
|
|
126
122
|
|
|
127
123
|
/**
|
|
128
124
|
* 在单个应用里
|
|
129
125
|
* 通过视图的codeName找到视图模型
|
|
130
126
|
*
|
|
131
|
-
* @param {(
|
|
127
|
+
* @param {(IApplication | ISubAppRef)} appModel 主应用或子应用
|
|
132
128
|
* @param {string} viewCodeName 视图名称小写
|
|
133
129
|
* @returns {*}
|
|
134
130
|
*/
|
|
135
131
|
export function findViewByName(
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
) {
|
|
139
|
-
return appModel.getAllPSAppViews()?.find((model:
|
|
140
|
-
|
|
141
|
-
});
|
|
132
|
+
_appModel: IApplication,
|
|
133
|
+
_viewCodeName: string,
|
|
134
|
+
): undefined {
|
|
135
|
+
// return appModel.getAllPSAppViews()?.find((model: IAppView) => {
|
|
136
|
+
// return getViewName(model) === viewCodeName;
|
|
137
|
+
// });
|
|
138
|
+
return undefined;
|
|
142
139
|
}
|
|
143
140
|
|
|
144
141
|
/**
|
|
145
142
|
* 从子应用和主应用里
|
|
146
143
|
* 通过视图的codeName找视图模型
|
|
147
144
|
*
|
|
148
|
-
* @param {
|
|
145
|
+
* @param {IApplication} appModel 主应用
|
|
149
146
|
* @param {string} viewCodeName 视图名称小写
|
|
150
147
|
* @returns {*}
|
|
151
148
|
*/
|
|
152
|
-
export function findView(
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
149
|
+
export function findView(
|
|
150
|
+
_appModel: IApplication,
|
|
151
|
+
_viewCodeName: string,
|
|
152
|
+
): undefined {
|
|
153
|
+
// let viewModel: IAppView | null | undefined;
|
|
154
|
+
// viewCodeName = viewCodeName.toLowerCase();
|
|
155
|
+
// // index找默认首页视图,其他匹配codeName
|
|
156
|
+
// if (viewCodeName === 'index') {
|
|
157
|
+
// viewModel = appModel.getDefaultPSAppIndexView();
|
|
158
|
+
// } else {
|
|
159
|
+
// // 先查找子应用,找到则不继续找了,优先从最后面的子应用找起
|
|
160
|
+
// if (appModel.getAllPSSubAppRefs()?.length) {
|
|
161
|
+
// appModel
|
|
162
|
+
// .getAllPSSubAppRefs()!
|
|
163
|
+
// .reverse()
|
|
164
|
+
// .find(sub => {
|
|
165
|
+
// viewModel = findViewByName(sub, viewCodeName);
|
|
166
|
+
// return !!viewModel;
|
|
167
|
+
// });
|
|
168
|
+
// }
|
|
169
|
+
// // 子应用里没有就在主应用里找。
|
|
170
|
+
// if (!viewModel) {
|
|
171
|
+
// viewModel = findViewByName(appModel, viewCodeName);
|
|
172
|
+
// }
|
|
173
|
+
// }
|
|
174
|
+
// return viewModel;
|
|
175
|
+
return undefined;
|
|
175
176
|
}
|
|
176
177
|
|
|
177
178
|
/**
|
|
@@ -180,13 +181,13 @@ export function findView(appModel: IPSApplication, viewCodeName: string) {
|
|
|
180
181
|
* @author lxm
|
|
181
182
|
* @date 2022-08-17 22:08:51
|
|
182
183
|
* @export
|
|
183
|
-
* @param {
|
|
184
|
+
* @param {IApplication} appModel 视图模型
|
|
184
185
|
* @param {Route} route 路由对象
|
|
185
186
|
* @param {number} level 层级
|
|
186
187
|
* @returns {*} {IRouteViewData}
|
|
187
188
|
*/
|
|
188
189
|
export function parseRouteViewData(
|
|
189
|
-
appModel:
|
|
190
|
+
appModel: IApplication,
|
|
190
191
|
route: Route,
|
|
191
192
|
level: number,
|
|
192
193
|
): IRouteViewData {
|
|
@@ -207,9 +208,6 @@ export function parseRouteViewData(
|
|
|
207
208
|
throw new RuntimeError(`找不到视图${viewCodeName}`);
|
|
208
209
|
}
|
|
209
210
|
|
|
210
|
-
const modelPath = viewModel.modelPath!;
|
|
211
|
-
const { viewType } = viewModel.refM;
|
|
212
|
-
|
|
213
211
|
// !解析上下文参数,整合当前层级之前所有的上下文参数
|
|
214
212
|
const context: IParams = {};
|
|
215
213
|
// 合并appData里的应用上下文
|
|
@@ -234,8 +232,7 @@ export function parseRouteViewData(
|
|
|
234
232
|
const { params, srfnav } = routePath.pathNodes[level - 1];
|
|
235
233
|
|
|
236
234
|
return {
|
|
237
|
-
|
|
238
|
-
viewType,
|
|
235
|
+
viewType: '',
|
|
239
236
|
context,
|
|
240
237
|
params,
|
|
241
238
|
srfnav,
|
|
@@ -272,7 +269,10 @@ export function route2routePath(route: Route): IRoutePath {
|
|
|
272
269
|
params = undefined;
|
|
273
270
|
} else {
|
|
274
271
|
// 首页上下文要解析
|
|
275
|
-
params = qs.parse(paramsStr, {
|
|
272
|
+
params = qs.parse(paramsStr, {
|
|
273
|
+
strictNullHandling: true,
|
|
274
|
+
delimiter: ';',
|
|
275
|
+
});
|
|
276
276
|
}
|
|
277
277
|
|
|
278
278
|
// 路由参数存在的时候,解析里面的上下文。
|
|
@@ -305,6 +305,7 @@ export function route2routePath(route: Route): IRoutePath {
|
|
|
305
305
|
route.params.appContext !== ibiz.env.routePlaceholder
|
|
306
306
|
) {
|
|
307
307
|
appContext = qs.parse(route.params.appContext as string, {
|
|
308
|
+
strictNullHandling: true,
|
|
308
309
|
delimiter: ';',
|
|
309
310
|
});
|
|
310
311
|
}
|
|
@@ -325,7 +326,10 @@ export function routePath2string(routePath: IRoutePath): string {
|
|
|
325
326
|
let pathStr = '';
|
|
326
327
|
// 应用上下文
|
|
327
328
|
if (routePath.appContext) {
|
|
328
|
-
pathStr += `/${qs.stringify(routePath.appContext, {
|
|
329
|
+
pathStr += `/${qs.stringify(routePath.appContext, {
|
|
330
|
+
delimiter: ';',
|
|
331
|
+
strictNullHandling: true,
|
|
332
|
+
})}`;
|
|
329
333
|
} else {
|
|
330
334
|
pathStr += `/${ibiz.env.routePlaceholder}`;
|
|
331
335
|
}
|
|
@@ -354,7 +358,7 @@ export function routePath2string(routePath: IRoutePath): string {
|
|
|
354
358
|
|
|
355
359
|
// 把路由参数转换到路由路径上去
|
|
356
360
|
pathStr +=
|
|
357
|
-
qs.stringify(routeParams, { delimiter: ';' }) ||
|
|
361
|
+
qs.stringify(routeParams, { delimiter: ';', strictNullHandling: true }) ||
|
|
358
362
|
ibiz.env.routePlaceholder;
|
|
359
363
|
});
|
|
360
364
|
|
package/out/props/common.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 必填props类型
|
|
3
|
-
*
|
|
4
|
-
* @author lxm
|
|
5
|
-
* @date 2022-11-01 19:11:47
|
|
6
|
-
* @export
|
|
7
|
-
* @class RequiredProp
|
|
8
|
-
* @template T type的类型
|
|
9
|
-
* @template D 默认值的类型
|
|
10
|
-
* @template V 校验函数的类型
|
|
11
|
-
*/
|
|
12
|
-
export declare class RequiredProp<T, D = undefined, V = undefined> {
|
|
13
|
-
readonly required = true;
|
|
14
|
-
type: T;
|
|
15
|
-
default?: D | undefined;
|
|
16
|
-
validator?: V | undefined;
|
|
17
|
-
constructor(type: T, _default?: D, validator?: V);
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=common.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/props/common.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,qBAAa,YAAY,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,SAAS;IACvD,QAAQ,CAAC,QAAQ,QAAQ;IAEzB,IAAI,EAAE,CAAC,CAAC;IAER,OAAO,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;IAExB,SAAS,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;gBAEd,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;CASjD"}
|
package/out/props/common.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 必填props类型
|
|
3
|
-
*
|
|
4
|
-
* @author lxm
|
|
5
|
-
* @date 2022-11-01 19:11:47
|
|
6
|
-
* @export
|
|
7
|
-
* @class RequiredProp
|
|
8
|
-
* @template T type的类型
|
|
9
|
-
* @template D 默认值的类型
|
|
10
|
-
* @template V 校验函数的类型
|
|
11
|
-
*/
|
|
12
|
-
export class RequiredProp {
|
|
13
|
-
constructor(type, _default, validator) {
|
|
14
|
-
this.required = true;
|
|
15
|
-
if (_default) {
|
|
16
|
-
this.default = _default;
|
|
17
|
-
}
|
|
18
|
-
if (validator) {
|
|
19
|
-
this.validator = validator;
|
|
20
|
-
}
|
|
21
|
-
this.type = type;
|
|
22
|
-
}
|
|
23
|
-
}
|