parent
5c0895ed73
commit
0c37e693c2
@ -1,24 +1,80 @@ |
|||||||
/* |
import { App, Component } from 'vue' |
||||||
* @Author: 卜启缘 |
import 'element-plus/dist/index.css' |
||||||
* @Date: 2021-04-22 02:10:31 |
import { |
||||||
* @LastEditTime: 2021-07-05 11:39:10 |
ElAffix, |
||||||
* @LastEditors: 卜启缘 |
ElSkeleton, |
||||||
* @Description: 按需导入element-plus |
ElBreadcrumb, |
||||||
* @FilePath: \vite-vue3-lowcode\src\plugins\element-plus.ts |
ElBreadcrumbItem, |
||||||
*/ |
ElScrollbar, |
||||||
import 'element-plus/packages/theme-chalk/src/base.scss' |
ElSubMenu, |
||||||
// import 'element-plus/lib/theme-chalk/index.css'
|
ElButton, |
||||||
// import 'element-plus/lib/theme-chalk/el-popper.css'
|
ElCol, |
||||||
import type { App } from 'vue' |
ElRow, |
||||||
|
ElSpace, |
||||||
|
ElDivider, |
||||||
|
ElCard, |
||||||
|
ElDropdown, |
||||||
|
ElDialog, |
||||||
|
ElMenu, |
||||||
|
ElMenuItem, |
||||||
|
ElDropdownItem, |
||||||
|
ElDropdownMenu, |
||||||
|
ElIcon, |
||||||
|
ElInput, |
||||||
|
ElForm, |
||||||
|
ElFormItem, |
||||||
|
ElLoading, |
||||||
|
ElPopover, |
||||||
|
ElPopper, |
||||||
|
ElTooltip, |
||||||
|
ElDrawer, |
||||||
|
ElPagination, |
||||||
|
ElAlert, |
||||||
|
ElRadioButton, |
||||||
|
ElRadioGroup, |
||||||
|
ElInfiniteScroll |
||||||
|
} from 'element-plus' |
||||||
|
|
||||||
import { ElInfiniteScroll, locale } from 'element-plus' |
const components = [ |
||||||
|
ElAffix, |
||||||
|
ElSkeleton, |
||||||
|
ElBreadcrumb, |
||||||
|
ElBreadcrumbItem, |
||||||
|
ElScrollbar, |
||||||
|
ElSubMenu, |
||||||
|
ElButton, |
||||||
|
ElCol, |
||||||
|
ElRow, |
||||||
|
ElSpace, |
||||||
|
ElDivider, |
||||||
|
ElCard, |
||||||
|
ElDropdown, |
||||||
|
ElDialog, |
||||||
|
ElMenu, |
||||||
|
ElMenuItem, |
||||||
|
ElDropdownItem, |
||||||
|
ElDropdownMenu, |
||||||
|
ElIcon, |
||||||
|
ElInput, |
||||||
|
ElForm, |
||||||
|
ElFormItem, |
||||||
|
ElPopover, |
||||||
|
ElPopper, |
||||||
|
ElTooltip, |
||||||
|
ElDrawer, |
||||||
|
ElPagination, |
||||||
|
ElAlert, |
||||||
|
ElRadioButton, |
||||||
|
ElRadioGroup |
||||||
|
] |
||||||
|
|
||||||
import lang from 'element-plus/lib/locale/lang/zh-cn' |
const plugins = [ElLoading, ElInfiniteScroll] |
||||||
import 'dayjs/locale/zh-cn' |
|
||||||
|
|
||||||
// 设置语言
|
export function setupElementPlus(app: App) { |
||||||
import.meta.env.DEV ? locale(lang) : locale.use(lang) |
components.forEach((component: Component) => { |
||||||
|
app.component(component.name!, component) |
||||||
export const setupElementPlus = (app: App) => { |
}) |
||||||
app.use(ElInfiniteScroll) |
plugins.forEach((plugin) => { |
||||||
|
app.use(plugin) |
||||||
|
}) |
||||||
} |
} |
||||||
|
@ -0,0 +1,67 @@ |
|||||||
|
declare module '*.bmp' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.gif' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.jpg' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.jpeg' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.png' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.webp' { |
||||||
|
const src: string |
||||||
|
export default src |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.module.css' { |
||||||
|
const classes: { readonly [key: string]: string } |
||||||
|
export default classes |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.module.scss' { |
||||||
|
const classes: { readonly [key: string]: string } |
||||||
|
export default classes |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.module.less' { |
||||||
|
const classes: { readonly [key: string]: string } |
||||||
|
export default classes |
||||||
|
} |
||||||
|
|
||||||
|
declare module '*.module.sass' { |
||||||
|
const classes: { readonly [key: string]: string } |
||||||
|
export default classes |
||||||
|
} |
||||||
|
|
||||||
|
declare module 'moment/locale/*' { |
||||||
|
const LocaleMessage: { [key: string]: any } |
||||||
|
export default LocaleMessage |
||||||
|
} |
||||||
|
|
||||||
|
declare module 'ant-design-vue/es/locale-provider/*' { |
||||||
|
const LocaleMessage: { [key: string]: any } |
||||||
|
export default LocaleMessage |
||||||
|
} |
||||||
|
|
||||||
|
// ant-design-vue/es/base
|
||||||
|
declare module 'ant-design-vue/es/base' { |
||||||
|
class Base { |
||||||
|
static install(vue: typeof Vue): void |
||||||
|
} |
||||||
|
export default Base |
||||||
|
} |
@ -0,0 +1,18 @@ |
|||||||
|
import Vue, { VNode } from 'vue' |
||||||
|
|
||||||
|
declare module '*.tsx' { |
||||||
|
import Vue from 'compatible-vue' |
||||||
|
export default Vue |
||||||
|
} |
||||||
|
|
||||||
|
declare global { |
||||||
|
namespace JSX { |
||||||
|
// tslint:disable no-empty-interface
|
||||||
|
type Element = VNode |
||||||
|
// tslint:disable no-empty-interface
|
||||||
|
type ElementClass = Vue |
||||||
|
interface IntrinsicElements { |
||||||
|
[elem: string]: any |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,24 @@ |
|||||||
|
declare module '*.vue' { |
||||||
|
import { defineComponent } from 'vue' |
||||||
|
const component: ReturnType<typeof defineComponent> |
||||||
|
export default component |
||||||
|
} |
||||||
|
|
||||||
|
// declare module '*.vue' {
|
||||||
|
// import * as vue from 'vue';
|
||||||
|
// export declare const render: vue.RootRenderFunction<Element | DocumentFragment>
|
||||||
|
// }
|
||||||
|
|
||||||
|
// declare module '@vue/runtime-core' {
|
||||||
|
// interface ComponentCustomProperties {
|
||||||
|
// $createLoading: () => any
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
declare type Nullable<T> = T | null |
||||||
|
|
||||||
|
declare type CustomizedHTMLElement<T> = HTMLElement & T |
||||||
|
|
||||||
|
declare type Indexable<T> = { |
||||||
|
[key: string]: T |
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
import { ComponentCustomProperties } from 'vue' |
||||||
|
import { Store } from 'vuex' |
||||||
|
|
||||||
|
declare module '@vue/runtime-core' { |
||||||
|
// declare your own store states
|
||||||
|
interface State { |
||||||
|
count: number |
||||||
|
} |
||||||
|
|
||||||
|
// provide typings for `this.$store`
|
||||||
|
interface ComponentCustomProperties { |
||||||
|
$store: Store<State> |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
export {} |
Loading…
Reference in new issue