layui/.svn/pristine/18/189ee20a0544ea6a657d12d3d5c009b402e39fdf.svn-base
2022-12-09 16:41:41 +08:00

14 lines
352 B
Plaintext

import { App, Component, Plugin } from "vue";
export type WithInstallType<T> = T & Plugin;
export const withInstall = <T>(comp: T): T & Plugin => {
const component = comp as T & Component & Plugin;
component.install = (app: App) => {
app.component(component.name!, comp as T & Component & Plugin);
};
return component as T & Plugin;
};