UNPKG

@tplc/business

Version:

56 lines (52 loc) 1.36 kB
import { LcbGlobal } from './action' import { merge } from 'lodash-es' export const $lcb: LcbGlobal = { navigateTo: (url) => { uni.navigateTo({ url }) }, internalPages: { webview: '/pages/system/webview', search: '/pages/search/index', setting: '/pages/mine/setting', home: '/pages/index/index', orderList: '/pages-sub/order/list', authPhone: '/pages/system/authPhone', userEdit: '/pages/user/edit', drawdown: '/pages/drawdown/drawdown', notification:'/pages-sub/notification/index', }, } as LcbGlobal uni.$lcb = $lcb export const setup = (params: Partial<LcbGlobal>) => { merge(uni.$lcb, params) } // #ifdef H5 // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore const importFn = import.meta.glob('./components/lcb-*/lcb-*.vue', { eager: true }) const components: { name: string }[] = [] for (const key in importFn) { const component = importFn[key].default if (component.name) { component.install = function (Vue) { Vue.component(component.name, component) } components.push(component) } } // #endif const install = (Vue) => { // #ifdef H5 components.forEach(function (component) { Vue.component(component.name, component) }) // #endif // #ifndef APP-NVUE Vue.config.globalProperties.$lcb = $lcb // #endif } export default { install, }