From a1250d9293bbfc10d2528bd83f0f12d3c317d8df Mon Sep 17 00:00:00 2001 From: zhf <1204297681@qq.com> Date: Tue, 19 Mar 2024 13:19:44 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=88=97=E8=A1=A8=E5=AF=BC=E8=88=AA?= =?UTF-8?q?=E8=A7=86=E5=9B=BE=E6=94=AF=E6=8C=81searchbar=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E6=A0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 4 ++++ src/control/exp-bar/render-util.tsx | 18 +++++++++++++++++- src/view-engine/exp-view.engine.ts | 11 +++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9676ba3f..91a62263 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ ## [Unreleased] +### Added + +- 列表导航视图支持searchbar搜索栏 + ## [0.6.9] - 2024-03-17 ### Added diff --git a/src/control/exp-bar/render-util.tsx b/src/control/exp-bar/render-util.tsx index e1e68305..16d162ee 100644 --- a/src/control/exp-bar/render-util.tsx +++ b/src/control/exp-bar/render-util.tsx @@ -1,7 +1,7 @@ import { Namespace } from '@ibiz-template/core'; import { IExpBarControlController } from '@ibiz-template/runtime'; import { debounce } from 'lodash-es'; -import { VNode } from 'vue'; +import { VNode, h, resolveComponent } from 'vue'; import { useRoute } from 'vue-router'; import { onRouteChange, @@ -61,6 +61,22 @@ export function useExpBarRender( if (!model.enableSearch) { return null; } + + const modelData = c.view.model.viewLayoutPanel?.controls?.find( + item => item.id === 'searchbar', + ); + if (modelData) { + const ctrlProps = { + context: c.context, + params: c.params, + }; + const comp = resolveComponent('IBizControlShell'); + return h(comp, { + modelData: modelData, + ...ctrlProps, + }); + } + return ( item.id === 'searchbar', + ); + if (modelData && !modelData.name) { + modelData.name = 'searchbar'; + } + super(view); + } + /** * 组件创建 * -- Gitee