兰宝车间质量管理系统-前端
LiuHao
2023-06-06 3267f596030260a4fe0f3ff6be8fca93c9cc2466
add vue全局声明、Ele全局实例、类型声明
已修改2个文件
59 ■■■■ 文件已修改
src/types/element.d.ts 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/types/global.d.ts 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/types/element.d.ts
@@ -1 +1,32 @@
declare type ElTagType = '' | 'success' | 'warning' | 'info' | 'danger' | 'default' | 'primary';
import type * as ep from 'element-plus';
declare global {
  declare type ElTagType = '' | 'success' | 'warning' | 'info' | 'danger' | 'default' | 'primary';
  declare type ElFormInstance = InstanceType<typeof ep.ElForm>;
  declare type ElTableInstance = InstanceType<typeof ep.ElTable>;
  declare type ElTreeInstance = InstanceType<typeof ep.ElTree>;
  declare type ElTreeSelectInstance = InstanceType<typeof ep.ElTreeSelect>;
  declare type ElSelectInstance = InstanceType<typeof ep.ElSelect>;
  declare type ElUploadInstance = InstanceType<typeof ep.ElUpload>;
  declare type ElCardInstance = InstanceType<typeof ep.ElCard>;
  declare type ElDialogInstance = InstanceType<typeof ep.ElDialog>;
  declare type ElInputInstance = InstanceType<typeof ep.ElInput>;
  declare type ElInputNumberInstance = InstanceType<typeof ep.ElInputNumber>;
  declare type ElRadioInstance = InstanceType<typeof ep.ElRadio>;
  declare type ElRadioGroupInstance = InstanceType<typeof ep.ElRadioGroup>;
  declare type ElRadioButtonInstance = InstanceType<typeof ep.ElRadioButton>;
  declare type ElCheckboxInstance = InstanceType<typeof ep.ElCheckbox>;
  declare type ElCheckboxGroupInstance = InstanceType<typeof ep.ElCheckboxGroup>;
  declare type ElSwitchInstance = InstanceType<typeof ep.ElSwitch>;
  declare type ElDatePickerInstance = InstanceType<typeof ep.ElDatePicker>;
  declare type ElTimePickerInstance = InstanceType<typeof ep.ElTimePicker>;
  declare type ElTimeSelectInstance = InstanceType<typeof ep.ElTimeSelect>;
  declare type ElCascaderInstance = InstanceType<typeof ep.ElCascader>;
  declare type ElColorPickerInstance = InstanceType<typeof ep.ElColorPicker>;
  declare type ElRateInstance = InstanceType<typeof ep.ElRate>;
  declare type ElSliderInstance = InstanceType<typeof ep.ElSlider>;
  declare type ElUploadInstance = InstanceType<typeof ep.ElUpload>;
  declare type ElFormRules = ep.FormRules;
  declare type DateModelType = ep.DateModelType;
  declare type UploadFile = typeof ep.UploadFile;
}
src/types/global.d.ts
@@ -1,9 +1,15 @@
import { FormRules } from 'element-plus';
import type { ComponentInternalInstance as ComponentInstance, PropType as VuePropType } from 'vue';
declare global {
  /** vue Instance */
  declare type ComponentInternalInstance = ComponentInstance;
  /**vue */
  declare type PropType<T> = VuePropType<T>;
  /**
   * 界面字段隐藏属性
   */
  interface FieldOption {
  declare interface FieldOption {
    key: number;
    label: string;
    visible: boolean;
@@ -12,7 +18,7 @@
  /**
   * 弹窗属性
   */
  interface DialogOption {
  declare interface DialogOption {
    /**
     * 弹窗标题
     */
@@ -23,7 +29,7 @@
    visible: boolean;
  }
  interface UploadOption {
  declare interface UploadOption {
    /** 设置上传的请求头部 */
    headers: { [key: string]: any };
@@ -34,7 +40,7 @@
  /**
   * 导入属性
   */
  interface ImportOption extends UploadOption {
  declare interface ImportOption extends UploadOption {
    /** 是否显示弹出层 */
    open: boolean;
    /** 弹出层标题 */
@@ -48,14 +54,14 @@
  /**
   * 字典数据  数据配置
   */
  interface DictDataOption {
  declare interface DictDataOption {
    label: string;
    value: string;
    elTagType?: ElTagType;
    elTagClass?: string;
  }
  interface BaseEntity {
  declare interface BaseEntity {
    createBy?: any;
    createDept?: any;
    createTime?: string;
@@ -68,15 +74,15 @@
   * T : 表单数据
   * D : 查询参数
   */
  interface PageData<T, D> {
  declare interface PageData<T, D> {
    form: T;
    queryParams: D;
    rules: FormRules;
    rules: ElFormRules;
  }
  /**
   * 分页查询参数
   */
  interface PageQuery {
  declare interface PageQuery {
    pageNum: number;
    pageSize: number;
  }