vue-tianditu2
Version:
3 lines (2 loc) • 1.94 kB
JavaScript
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),l=require("../../use/mapRoot.js"),d=require("../../utils/fix.js"),p=require("./use/methods.js"),g=require("./use/state.js"),S=require("./components/SearchBox.js"),q=require("./components/SearchSuggests.js"),m=require("./components/SearchPois.js"),C=require("./components/SearchMapView.js"),c=require("./components/icons.js"),M=require("../route/index.js");;/* empty css */;/* empty css */const f=t.defineComponent({name:"TdtSearch",props:{placeholder:{type:String,default:"输入关键字搜索"},searchBtn:{type:Boolean,default:!0},routeBtn:{type:Boolean,default:!0}},emits:{"poi-click":o=>!0,"suggest-click":o=>!0,"search-complete":o=>!0},setup(o,{emit:n}){const e=g.useState(),{onSearchComplete:u,onPoiClick:s,onSuggestClick:i,onSearch:a,onPageChange:h}=p.useMethods(e,n);return t.onBeforeMount(async()=>{e.tdtMap=await l.useMapRoot(),e.localSearch=new T.LocalSearch(e.tdtMap,{pageCapacity:10,onSearchComplete:u})}),()=>t.h("div",{class:"tdt-search",...d.fixMapPropagation(e.tdtMap)},e.showRoute?[t.h(M.TdtRoute),t.h("i",{class:"tdt-search-route__close",onClick:()=>e.showRoute=!1},[t.h(c.IconClose)])]:[t.h(S.SearchBox,{modelValue:e.keyword,placeholder:o.placeholder,"onUpdate:modelValue":r=>{e.keyword=r,a(4,r)},onSearch:r=>a(1,r)},[o.searchBtn&&t.h("button",{class:"tdt-search-box__btn",onClick:()=>a(1)},[t.h(c.IconSearch)]),o.routeBtn&&t.h("button",{class:"tdt-search-box__btn",onClick:()=>e.showRoute=!0},[t.h(c.IconRoute)])]),t.h(q.SearchSuggests,{suggests:e.suggests||[],onSuggestClick:i}),t.h(m.SearchPois,{pois:e.pois||[],page:{current:e.current,size:10,total:e.total},onPoiClick:s,"onUpdate:page":h}),t.h(C.SearchMapView,{pois:e.pois||[],target:e.target,content:e.content,onPoiClick:s,"onUpdate:target":r=>e.target=r})])}});exports.TdtSearch=f;
//# sourceMappingURL=index.js.map