vue-vben-admin
vue-vben-admin copied to clipboard
【BasicTable】:useTableContext能否获取到formActions
Problem
我现在使用通过修改BasicTable将formActions传入createTableContext方法,因为要使用searchForm的getFieldsValue方法。有没有更好的方法获取到(不修改框架源码)?如果没有的话能否加上这个特性?
searchForm有这个组件嘛,我好像没有找到
useSearchFrom设置为true时会增加搜索表单。在BasicTable里面有对BasicForm的引用
你这个是在table创建页面获取,这个是正常的。如果你想要在组件外部获取table的上下文,就得用useTableContext,我现在这边封装了一个table的列表导出功能,获取到了table的相关参数和方法,但是searchForm的相关方法没有抛出来。我目前的解决方法是通过修改BasicTable的createTableContext方法,将formAction抛出,我想问有没有更优雅的解决方式
@masicheng useTableContext 是 inject 了 createTableContext 的 provide 提供的 方法、属性等等。 inject 的目的就是获得跨多父组件 provide 的能力。 可以搜索看到,useTableContext 仅在 \src\components\Table\src 内部使用。 根据你的描述: ”我现在这边封装了一个table的列表导出功能“ ,属于 BasicTable 的外部/上级了吧? 使用 useTableContext 我感觉怪怪的,一般外部可用的 hooks 会在 ”src\hooks“ 而非 ”\src\components\XXX\src\hooks“。 获得 BasicTable 的示例,是不是用 ref 更合适? 或者你 fork 一下,提供、切个可以重现的分支和示例看看呗。
@masicheng useTableContext 是 inject 了 createTableContext 的 provide 提供的 方法、属性等等。 inject 的目的就是获得跨多父组件 provide 的能力。 可以搜索看到,useTableContext 仅在 \src\components\Table\src 内部使用。 根据你的描述: ”我现在这边封装了一个table的列表导出功能“ ,属于 BasicTable 的外部/上级了吧? 使用 useTableContext 我感觉怪怪的,一般外部可用的 hooks 会在 ”src\hooks“ 而非 ”\src\components\XXX\src\hooks“。 获得 BasicTable 的示例,是不是用 ref 更合适? 或者你 fork 一下,提供、切个可以重现的分支和示例看看呗。
我是封装在compnents/Table/src/settings里面,将导出功能做成一个配置项
This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days