Commit b71e4e5186dbeeefec8d6c955b9ba4bb5e0fe89f
1 parent
68a96b7f
chore: modify component export method
Showing
18 changed files
with
59 additions
and
81 deletions
src/components/Application/index.ts
1 | -import AppLocalePicker from './src/AppLocalePicker.vue'; | ||
2 | -import AppLogo from './src/AppLogo.vue'; | 1 | +import AppLocalePickerLib from './src/AppLocalePicker.vue'; |
2 | +import AppLogoLib from './src/AppLogo.vue'; | ||
3 | import { withInstall } from '../util'; | 3 | import { withInstall } from '../util'; |
4 | 4 | ||
5 | -export { AppLocalePicker, AppLogo }; | ||
6 | - | ||
7 | -export default withInstall(AppLocalePicker, AppLogo); | 5 | +export const AppLocalePicker = withInstall(AppLocalePickerLib); |
6 | +export const AppLogo = withInstall(AppLogoLib); |
src/components/Authority/index.ts
1 | -import Authority from './src/index.vue'; | 1 | +import AuthorityLib from './src/index.vue'; |
2 | 2 | ||
3 | import { withInstall } from '../util'; | 3 | import { withInstall } from '../util'; |
4 | 4 | ||
5 | -export default withInstall(Authority); | ||
6 | - | ||
7 | -export { Authority }; | 5 | +export const Authority = withInstall(AuthorityLib); |
src/components/Basic/index.ts
1 | -import BasicArrow from './src/BasicArrow.vue'; | ||
2 | -import BasicHelp from './src/BasicHelp.vue'; | ||
3 | -import BasicTitle from './src/BasicTitle.vue'; | 1 | +import BasicArrowLib from './src/BasicArrow.vue'; |
2 | +import BasicHelpLib from './src/BasicHelp.vue'; | ||
3 | +import BasicTitleLib from './src/BasicTitle.vue'; | ||
4 | 4 | ||
5 | import { withInstall } from '../util'; | 5 | import { withInstall } from '../util'; |
6 | 6 | ||
7 | -export { BasicArrow, BasicHelp, BasicTitle }; | ||
8 | - | ||
9 | -export default withInstall(BasicArrow, BasicHelp, BasicTitle); | 7 | +export const BasicArrow = withInstall(BasicArrowLib); |
8 | +export const BasicHelp = withInstall(BasicHelpLib); | ||
9 | +export const BasicTitle = withInstall(BasicTitleLib); |
src/components/Breadcrumb/index.ts
1 | -import Breadcrumb from './src/Breadcrumb.vue'; | ||
2 | -import BreadcrumbItem from './src/BreadcrumbItem.vue'; | 1 | +import BreadcrumbLib from './src/Breadcrumb.vue'; |
2 | +import BreadcrumbItemLib from './src/BreadcrumbItem.vue'; | ||
3 | import { withInstall } from '../util'; | 3 | import { withInstall } from '../util'; |
4 | 4 | ||
5 | -export { Breadcrumb, BreadcrumbItem }; | ||
6 | - | ||
7 | -export default withInstall(Breadcrumb, BreadcrumbItem); | 5 | +export const Breadcrumb = withInstall(BreadcrumbLib); |
6 | +export const BreadcrumbItem = withInstall(BreadcrumbItemLib); |
src/components/Button/index.ts
src/components/ClickOutSide/index.ts
1 | -import ClickOutSide from './src/index.vue'; | 1 | +import ClickOutSideLib from './src/index.vue'; |
2 | import { withInstall } from '../util'; | 2 | import { withInstall } from '../util'; |
3 | 3 | ||
4 | -export { ClickOutSide }; | ||
5 | - | ||
6 | -export default withInstall(ClickOutSide); | 4 | +export const ClickOutSide = withInstall(ClickOutSideLib); |
src/components/Container/index.ts
1 | -import ScrollContainer from './src/ScrollContainer.vue'; | ||
2 | -import CollapseContainer from './src/collapse/CollapseContainer.vue'; | ||
3 | -import LazyContainer from './src/LazyContainer.vue'; | 1 | +import ScrollContainerLib from './src/ScrollContainer.vue'; |
2 | +import CollapseContainerLib from './src/collapse/CollapseContainer.vue'; | ||
3 | +import LazyContainerLib from './src/LazyContainer.vue'; | ||
4 | import { withInstall } from '../util'; | 4 | import { withInstall } from '../util'; |
5 | 5 | ||
6 | export * from './src/types'; | 6 | export * from './src/types'; |
7 | 7 | ||
8 | -export { ScrollContainer, CollapseContainer, LazyContainer }; | ||
9 | - | ||
10 | -export default withInstall(ScrollContainer, CollapseContainer, LazyContainer); | 8 | +export const ScrollContainer = withInstall(ScrollContainerLib); |
9 | +export const CollapseContainer = withInstall(CollapseContainerLib); | ||
10 | +export const LazyContainer = withInstall(LazyContainerLib); |
src/components/CountTo/index.ts
1 | // Transform vue-count-to to support vue3 version | 1 | // Transform vue-count-to to support vue3 version |
2 | 2 | ||
3 | -import CountTo from './src/index.vue'; | 3 | +import CountToLib from './src/index.vue'; |
4 | import { withInstall } from '../util'; | 4 | import { withInstall } from '../util'; |
5 | 5 | ||
6 | -export { CountTo }; | ||
7 | - | ||
8 | -export default withInstall(CountTo); | 6 | +export const CountTo = withInstall(CountToLib); |
src/components/Dropdown/index.ts
1 | -import Dropdown from './src/Dropdown'; | 1 | +import DropdownLib from './src/Dropdown'; |
2 | import { withInstall } from '../util'; | 2 | import { withInstall } from '../util'; |
3 | 3 | ||
4 | export * from './src/types'; | 4 | export * from './src/types'; |
5 | 5 | ||
6 | -export { Dropdown }; | ||
7 | -export default withInstall(Dropdown); | 6 | +export const Dropdown = withInstall(DropdownLib); |
src/components/Excel/index.ts
1 | -import ImportExcel from './src/ImportExcel.vue'; | ||
2 | -import ExportExcelModel from './src/ExportExcelModel.vue'; | 1 | +import ImportExcelLib from './src/ImportExcel.vue'; |
2 | +import ExportExcelModelLib from './src/ExportExcelModel.vue'; | ||
3 | 3 | ||
4 | import { withInstall } from '../util'; | 4 | import { withInstall } from '../util'; |
5 | 5 | ||
@@ -7,6 +7,5 @@ export * from './src/types'; | @@ -7,6 +7,5 @@ export * from './src/types'; | ||
7 | 7 | ||
8 | export { jsonToSheetXlsx, aoaToSheetXlsx } from './src/Export2Excel'; | 8 | export { jsonToSheetXlsx, aoaToSheetXlsx } from './src/Export2Excel'; |
9 | 9 | ||
10 | -export { ImportExcel, ExportExcelModel }; | ||
11 | - | ||
12 | -export default withInstall(ImportExcel, ExportExcelModel); | 10 | +export const ImportExcel = withInstall(ImportExcelLib); |
11 | +export const ExportExcelModel = withInstall(ExportExcelModelLib); |
src/components/Markdown/index.ts
1 | -import MarkDown from './src/index.vue'; | 1 | +import MarkDownLib from './src/index.vue'; |
2 | 2 | ||
3 | import { withInstall } from '../util'; | 3 | import { withInstall } from '../util'; |
4 | 4 | ||
5 | export * from './src/types'; | 5 | export * from './src/types'; |
6 | -export { MarkDown }; | ||
7 | -export default withInstall(MarkDown); | 6 | + |
7 | +export const MarkDown = withInstall(MarkDownLib); |
src/components/Menu/index.ts
src/components/Page/index.ts
1 | -import PageFooter from './src/PageFooter.vue'; | 1 | +import PageFooterLib from './src/PageFooter.vue'; |
2 | import { withInstall } from '../util'; | 2 | import { withInstall } from '../util'; |
3 | 3 | ||
4 | -export { PageFooter }; | ||
5 | - | ||
6 | -export default withInstall(PageFooter); | 4 | +export const PageFooter = withInstall(PageFooterLib); |
src/components/StrengthMeter/index.tsx
1 | -import StrengthMeter from './src/index'; | 1 | +import StrengthMeterLib from './src/index'; |
2 | import { withInstall } from '../util'; | 2 | import { withInstall } from '../util'; |
3 | 3 | ||
4 | -export { StrengthMeter }; | ||
5 | - | ||
6 | -export default withInstall(StrengthMeter); | 4 | +export const StrengthMeter = withInstall(StrengthMeterLib); |
src/components/Tinymce/index.ts
src/components/Verify/index.ts
1 | -import BasicDragVerify from './src/DragVerify'; | ||
2 | -import RotateDragVerify from './src/ImgRotate'; | 1 | +import BasicDragVerifyLib from './src/DragVerify'; |
2 | +import RotateDragVerifyLib from './src/ImgRotate'; | ||
3 | import { withInstall } from '../util'; | 3 | import { withInstall } from '../util'; |
4 | 4 | ||
5 | export * from './src/types'; | 5 | export * from './src/types'; |
6 | 6 | ||
7 | -export { RotateDragVerify, BasicDragVerify }; | ||
8 | - | ||
9 | -export default withInstall(RotateDragVerify, BasicDragVerify); | 7 | +export const RotateDragVerify = withInstall(RotateDragVerifyLib); |
8 | +export const BasicDragVerify = withInstall(BasicDragVerifyLib); |
src/components/VirtualScroll/index.ts
1 | -import VirtualScroll from './src/index'; | 1 | +import VirtualScrollLib from './src/index'; |
2 | import { withInstall } from '../util'; | 2 | import { withInstall } from '../util'; |
3 | 3 | ||
4 | -export { VirtualScroll }; | ||
5 | - | ||
6 | -export default withInstall(VirtualScroll); | 4 | +export const VirtualScroll = withInstall(VirtualScrollLib); |
src/components/util.ts
1 | -import type { VNodeChild } from 'vue'; | ||
2 | -import type { App, Component } from 'vue'; | ||
3 | - | ||
4 | -export function withInstall(...components: Component[]) { | ||
5 | - return (app: App) => { | ||
6 | - components.forEach((comp) => { | ||
7 | - comp.name && app.component(comp.name, comp); | ||
8 | - }); | ||
9 | - return app; | 1 | +import type { VNodeChild, Plugin } from 'vue'; |
2 | +import type { App } from 'vue'; | ||
3 | + | ||
4 | +export function withInstall<T>(component: T) { | ||
5 | + const comp = component as any; | ||
6 | + comp.install = (app: App) => { | ||
7 | + app.component(comp.displayName || comp.name, comp); | ||
10 | }; | 8 | }; |
9 | + return comp as T & Plugin; | ||
11 | } | 10 | } |
12 | 11 | ||
13 | export function convertToUnit( | 12 | export function convertToUnit( |