坑
作者:
列表的路由不能传path参数
文档里说要用renderDocumentListRouters这个方法生成路由,但是不能传path参数指定url。
它的内部用renderDocumentList和renderMultiOrgDocumentList2个方法生成了一个普通列表路由,一个多组织列表的路由。
为了解决传path的问题,可以像下面这样写代码。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
{
...renderDocumentList({
title: '编制方案设置',
entityName: EN_BudgetModel,
groupName: `${EN_BudgetModel}_list`,
createPresenter: async options => {
const { BudgetModelList } = await import(
'@main/screens/projects/budget/budget-model/list/BudgetModelList'
);
return new BudgetModelList({
...options
});
},
}),
refreshWhenParamsChanged: true,
path: appRouterHashManager.generateHashDef(EN_BudgetModel, PageModeEnum.List),
},
{
...renderMultiOrgDocumentList({
entityName: EN_BudgetModel,
groupName: defaultMultiOrgGroupName(EN_BudgetModel),
title: `编制方案设置多组织查询`,
createPresenter: async options => {
const { BudgetModelList } = await import(
'@main/screens/projects/budget/budget-model/list/BudgetModelList'
);
return new BudgetModelList({
...options
});
},
})
},
|
这里就是用renderDocumentList和renderMultiOrgDocumentList分别创建两个路由。
多组织查询按钮不显示
如果列表presenter中有commandActionResolver方法,则需要调一下super方法,否则的话就不会显示出多组织查询按钮。
const actions = super.commandActionResolver(commandActions)