diff --git a/packages/fineui/src/base/combination/searcher.js b/packages/fineui/src/base/combination/searcher.js index 9cf9f17c0..5f1fa86c6 100644 --- a/packages/fineui/src/base/combination/searcher.js +++ b/packages/fineui/src/base/combination/searcher.js @@ -17,7 +17,8 @@ import { BlankSplitChar, Events, EVENT_RESPONSE_TIME, - Func + Func, + isFunction, } from "@/core"; import { ButtonGroup } from "./group.button"; import { Maskers } from "@/base/0.base"; @@ -127,7 +128,8 @@ export class Searcher extends Widget { } _assertPopupView() { - const { masker, popup, chooseType, isAutoSync, adapter } = this.options; + const { masker, popup, chooseType, isAutoSync } = this.options; + const adapter = isFunction(this.options.adapter) ? this.options.adapter() : this.options.adapter; if ((masker && !Maskers.has(this.getName())) || (masker === false && !this.popupView)) { this.popupView = createWidget(popup, { type: SearcherView.xtype,