fix: 🐛 src/components 目录下的自定义组件无效问题修复

https://gitee.com/youlaiorg/vue3-element-admin/issues/I8GFHN #I8GFHN

Former-commit-id: 0565b99f8de3234c1e28acd7ba12167ad8d6d001
This commit is contained in:
hxr
2023-11-15 00:19:25 +08:00
parent 99bf3d35a9
commit e8e3c30fd9
3 changed files with 108 additions and 100 deletions

View File

@@ -1,6 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { useI18n } from "vue-i18n"; import { useI18n } from "vue-i18n";
import SvgIcon from "@/components/SvgIcon/index.vue";
import { useAppStore } from "@/store/modules/app"; import { useAppStore } from "@/store/modules/app";
const appStore = useAppStore(); const appStore = useAppStore();

View File

@@ -5,104 +5,113 @@
// Read more: https://github.com/vuejs/core/pull/3399 // Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core' import '@vue/runtime-core'
export { }; export {};
declare module "@vue/runtime-core" { declare module "@vue/runtime-core" {
export interface GlobalComponents { export interface GlobalComponents {
AppMain: typeof import("./../layout/components/AppMain.vue")["default"]; AppMain: typeof import("./../layout/components/AppMain.vue")["default"];
BarChart: typeof import("./../views/dashboard/components/BarChart.vue")["default"]; BarChart: typeof import("./../views/dashboard/components/BarChart.vue")["default"];
Breadcrumb: typeof import("./../components/Breadcrumb/index.vue")["default"]; Breadcrumb: typeof import("./../components/Breadcrumb/index.vue")["default"];
Dictionary: typeof import("./../components/Dictionary/index.vue")["default"]; DeptTree: typeof import("./../views/system/user/components/dept-tree.vue")["default"];
ElAlert: typeof import("element-plus/es")["ElAlert"]; Dictionary: typeof import("./../components/Dictionary/index.vue")["default"];
ElBreadcrumb: typeof import("element-plus/es")["ElBreadcrumb"]; DictItem: typeof import("./../views/system/dict/components/dict-item.vue")["default"];
ElBreadcrumbItem: typeof import("element-plus/es")["ElBreadcrumbItem"]; ElAlert: typeof import("element-plus/es")["ElAlert"];
ElButton: typeof import("element-plus/es")["ElButton"]; ElBreadcrumb: typeof import("element-plus/es")["ElBreadcrumb"];
ElCard: typeof import("element-plus/es")["ElCard"]; ElBreadcrumbItem: typeof import("element-plus/es")["ElBreadcrumbItem"];
ElCheckbox: typeof import("element-plus/es")["ElCheckbox"]; ElButton: typeof import("element-plus/es")["ElButton"];
ElCheckboxGroup: typeof import("element-plus/es")["ElCheckboxGroup"]; ElCard: typeof import("element-plus/es")["ElCard"];
ElCol: typeof import("element-plus/es")["ElCol"]; ElCheckbox: typeof import("element-plus/es")["ElCheckbox"];
ElDatePicker: typeof import("element-plus/es")["ElDatePicker"]; ElCheckboxGroup: typeof import("element-plus/es")["ElCheckboxGroup"];
ElDialog: typeof import("element-plus/es")["ElDialog"]; ElCol: typeof import("element-plus/es")["ElCol"];
ElDivider: typeof import("element-plus/es")["ElDivider"]; ElDatePicker: typeof import("element-plus/es")["ElDatePicker"];
ElDropdown: typeof import("element-plus/es")["ElDropdown"]; ElDialog: typeof import("element-plus/es")["ElDialog"];
ElDropdownItem: typeof import("element-plus/es")["ElDropdownItem"]; ElDivider: typeof import("element-plus/es")["ElDivider"];
ElDropdownMenu: typeof import("element-plus/es")["ElDropdownMenu"]; ElDropdown: typeof import("element-plus/es")["ElDropdown"];
ElForm: typeof import("element-plus/es")["ElForm"]; ElDropdownItem: typeof import("element-plus/es")["ElDropdownItem"];
ElFormItem: typeof import("element-plus/es")["ElFormItem"]; ElDropdownMenu: typeof import("element-plus/es")["ElDropdownMenu"];
ElIcon: typeof import("element-plus/es")["ElIcon"]; ElForm: typeof import("element-plus/es")["ElForm"];
ElInput: typeof import("element-plus/es")["ElInput"]; ElFormItem: typeof import("element-plus/es")["ElFormItem"];
ElInputNumber: typeof import("element-plus/es")["ElInputNumber"]; ElIcon: typeof import("element-plus/es")["ElIcon"];
ElLink: typeof import("element-plus/es")["ElLink"]; ElImage: typeof import("element-plus/es")["ElImage"];
ElMenu: typeof import("element-plus/es")["ElMenu"]; ElInput: typeof import("element-plus/es")["ElInput"];
ElMenuItem: typeof import("element-plus/es")["ElMenuItem"]; ElInputNumber: typeof import("element-plus/es")["ElInputNumber"];
ElOption: typeof import("element-plus/es")["ElOption"]; ElLink: typeof import("element-plus/es")["ElLink"];
ElPagination: typeof import("element-plus/es")["ElPagination"]; ElMenu: typeof import("element-plus/es")["ElMenu"];
ElPopover: typeof import("element-plus/es")["ElPopover"]; ElMenuItem: typeof import("element-plus/es")["ElMenuItem"];
ElRadio: typeof import("element-plus/es")["ElRadio"]; ElOption: typeof import("element-plus/es")["ElOption"];
ElRadioButton: typeof import("element-plus/es")["ElRadioButton"]; ElPagination: typeof import("element-plus/es")["ElPagination"];
ElRadioGroup: typeof import("element-plus/es")["ElRadioGroup"]; ElPopover: typeof import("element-plus/es")["ElPopover"];
ElRate: typeof import("element-plus/es")["ElRate"]; ElRadio: typeof import("element-plus/es")["ElRadio"];
ElRow: typeof import("element-plus/es")["ElRow"]; ElRadioButton: typeof import("element-plus/es")["ElRadioButton"];
ElScrollbar: typeof import("element-plus/es")["ElScrollbar"]; ElRadioGroup: typeof import("element-plus/es")["ElRadioGroup"];
ElSelect: typeof import("element-plus/es")["ElSelect"]; ElRate: typeof import("element-plus/es")["ElRate"];
ElSubMenu: typeof import("element-plus/es")["ElSubMenu"]; ElRow: typeof import("element-plus/es")["ElRow"];
ElSwitch: typeof import("element-plus/es")["ElSwitch"]; ElScrollbar: typeof import("element-plus/es")["ElScrollbar"];
ElTable: typeof import("element-plus/es")["ElTable"]; ElSelect: typeof import("element-plus/es")["ElSelect"];
ElTableColumn: typeof import("element-plus/es")["ElTableColumn"]; ElSubMenu: typeof import("element-plus/es")["ElSubMenu"];
ElTabPane: typeof import("element-plus/es")["ElTabPane"]; ElSwitch: typeof import("element-plus/es")["ElSwitch"];
ElTabs: typeof import("element-plus/es")["ElTabs"]; ElTable: typeof import("element-plus/es")["ElTable"];
ElTag: typeof import("element-plus/es")["ElTag"]; ElTableColumn: typeof import("element-plus/es")["ElTableColumn"];
ElTooltip: typeof import("element-plus/es")["ElTooltip"]; ElTabPane: typeof import("element-plus/es")["ElTabPane"];
ElTree: typeof import("element-plus/es")["ElTree"]; ElTabs: typeof import("element-plus/es")["ElTabs"];
ElTreeSelect: typeof import("element-plus/es")["ElTreeSelect"]; ElTag: typeof import("element-plus/es")["ElTag"];
ElUpload: typeof import("element-plus/es")["ElUpload"]; ElTooltip: typeof import("element-plus/es")["ElTooltip"];
FixedThead: typeof import("./../views/table/dynamic-table/components/FixedThead.vue")["default"]; ElTree: typeof import("element-plus/es")["ElTree"];
FunnelChart: typeof import("./../views/dashboard/components/FunnelChart.vue")["default"]; ElTreeSelect: typeof import("element-plus/es")["ElTreeSelect"];
GithubCorner: typeof import("./../components/GithubCorner/index.vue")["default"]; ElUpload: typeof import("element-plus/es")["ElUpload"];
Hamburger: typeof import("./../components/Hamburger/index.vue")["default"]; FixedThead: typeof import("./../views/demo/table/dynamic-table/components/FixedThead.vue")["default"];
IconSelect: typeof import("./../components/IconSelect/index.vue")["default"]; FunnelChart: typeof import("./../views/dashboard/components/FunnelChart.vue")["default"];
IEpArrowDown: typeof import("~icons/ep/arrow-down")["default"]; GithubCorner: typeof import("./../components/GithubCorner/index.vue")["default"];
IEpCaretBottom: typeof import("~icons/ep/caret-bottom")["default"]; Hamburger: typeof import("./../components/Hamburger/index.vue")["default"];
IEpCaretTop: typeof import("~icons/ep/caret-top")["default"]; IconSelect: typeof import("./../components/IconSelect/index.vue")["default"];
IEpClose: typeof import("~icons/ep/close")["default"]; IEpArrowDown: typeof import("~icons/ep/arrow-down")["default"];
IEpCollection: typeof import("~icons/ep/collection")["default"]; IEpCaretBottom: typeof import("~icons/ep/caret-bottom")["default"];
IEpDelete: typeof import("~icons/ep/delete")["default"]; IEpCaretTop: typeof import("~icons/ep/caret-top")["default"];
IEpDownload: typeof import("~icons/ep/download")["default"]; IEpClose: typeof import("~icons/ep/close")["default"];
IEpEdit: typeof import("~icons/ep/edit")["default"]; IEpCollection: typeof import("~icons/ep/collection")["default"];
IEpPlus: typeof import("~icons/ep/plus")["default"]; IEpDelete: typeof import("~icons/ep/delete")["default"];
IEpPosition: typeof import("~icons/ep/position")["default"]; IEpDownload: typeof import("~icons/ep/download")["default"];
IEpRefresh: typeof import("~icons/ep/refresh")["default"]; IEpEdit: typeof import("~icons/ep/edit")["default"];
IEpRefreshLeft: typeof import("~icons/ep/refresh-left")["default"]; IEpPicture: typeof import("~icons/ep/picture")["default"];
IEpSearch: typeof import("~icons/ep/search")["default"]; IEpPlus: typeof import("~icons/ep/plus")["default"];
IEpSetting: typeof import("~icons/ep/setting")["default"]; IEpPosition: typeof import("~icons/ep/position")["default"];
IEpSortDown: typeof import("~icons/ep/sort-down")["default"]; IEpRefresh: typeof import("~icons/ep/refresh")["default"];
IEpSortUp: typeof import("~icons/ep/sort-up")["default"]; IEpRefreshLeft: typeof import("~icons/ep/refresh-left")["default"];
IEpTop: typeof import("~icons/ep/top")["default"]; IEpSearch: typeof import("~icons/ep/search")["default"];
IEpUploadFilled: typeof import("~icons/ep/upload-filled")["default"]; IEpSetting: typeof import("~icons/ep/setting")["default"];
LangSelect: typeof import("./../components/LangSelect/index.vue")["default"]; IEpSortDown: typeof import("~icons/ep/sort-down")["default"];
Link: typeof import("./../layout/components/Sidebar/Link.vue")["default"]; IEpSortUp: typeof import("~icons/ep/sort-up")["default"];
Logo: typeof import("./../layout/components/Sidebar/Logo.vue")["default"]; IEpTop: typeof import("~icons/ep/top")["default"];
MultiUpload: typeof import("./../components/Upload/MultiUpload.vue")["default"]; IEpUploadFilled: typeof import("~icons/ep/upload-filled")["default"];
Pagination: typeof import("./../components/Pagination/index.vue")["default"]; Item: typeof import("./../layout/components/Sidebar/Item.vue")["default"];
PieChart: typeof import("./../views/dashboard/components/PieChart.vue")["default"]; LangSelect: typeof import("./../components/LangSelect/index.vue")["default"];
RadarChart: typeof import("./../views/dashboard/components/RadarChart.vue")["default"]; LeftMenu: typeof import("./../layout/components/Sidebar/LeftMenu.vue")["default"];
RightPanel: typeof import("./../components/RightPanel/index.vue")["default"]; Link: typeof import("./../layout/components/Sidebar/Link.vue")["default"];
RouterLink: typeof import("vue-router")["RouterLink"]; Logo: typeof import("./../layout/components/Sidebar/Logo.vue")["default"];
RouterView: typeof import("vue-router")["RouterView"]; MultiUpload: typeof import("./../components/Upload/MultiUpload.vue")["default"];
ScrollPane: typeof import("./../layout/components/TagsView/ScrollPane.vue")["default"]; NavBar: typeof import("./../layout/components/NavBar/index.vue")["default"];
Settings: typeof import("./../layout/components/Settings/index.vue")["default"]; NavRight: typeof import("./../layout/components/NavBar/NavRight.vue")["default"];
Sidebar: typeof import("./../layout/components/Sidebar/index.vue")["default"]; Pagination: typeof import("./../components/Pagination/index.vue")["default"];
SidebarItem: typeof import("./../layout/components/Sidebar/SidebarItem.vue")["default"]; PieChart: typeof import("./../views/dashboard/components/PieChart.vue")["default"];
SingleUpload: typeof import("./../components/Upload/SingleUpload.vue")["default"]; RadarChart: typeof import("./../views/dashboard/components/RadarChart.vue")["default"];
SizeSelect: typeof import("./../components/SizeSelect/index.vue")["default"]; RightPanel: typeof import("./../components/RightPanel/index.vue")["default"];
SvgIcon: typeof import("./../components/SvgIcon/index.vue")["default"]; RouterLink: typeof import("vue-router")["RouterLink"];
SwitchRoles: typeof import("./../views/permission/components/SwitchRoles.vue")["default"]; RouterView: typeof import("vue-router")["RouterView"];
TagInput: typeof import("./../components/TagInput/index.vue")["default"]; ScrollPane: typeof import("./../layout/components/TagsView/ScrollPane.vue")["default"];
TagsView: typeof import("./../layout/components/TagsView/index.vue")["default"]; Settings: typeof import("./../layout/components/Settings/index.vue")["default"];
UnfixedThead: typeof import("./../views/table/dynamic-table/components/UnfixedThead.vue")["default"]; Sidebar: typeof import("./../layout/components/Sidebar/index.vue")["default"];
WangEditor: typeof import("./../components/WangEditor/index.vue")["default"]; SidebarItem: typeof import("./../layout/components/Sidebar/SidebarItem.vue")["default"];
} SingleUpload: typeof import("./../components/Upload/SingleUpload.vue")["default"];
export interface ComponentCustomProperties { SizeSelect: typeof import("./../components/SizeSelect/index.vue")["default"];
vLoading: typeof import("element-plus/es")["ElLoadingDirective"]; SvgIcon: typeof import("./../components/SvgIcon/index.vue")["default"];
} SwitchRoles: typeof import("./../views/demo/permission/components/SwitchRoles.vue")["default"];
TagInput: typeof import("./../components/TagInput/index.vue")["default"];
TagsView: typeof import("./../layout/components/TagsView/index.vue")["default"];
TopMenu: typeof import("./../layout/components/Sidebar/TopMenu.vue")["default"];
UnfixedThead: typeof import("./../views/demo/table/dynamic-table/components/UnfixedThead.vue")["default"];
WangEditor: typeof import("./../components/WangEditor/index.vue")["default"];
}
export interface ComponentCustomProperties {
vLoading: typeof import("element-plus/es")["ElLoadingDirective"];
}
} }

View File

@@ -98,7 +98,7 @@ export default defineConfig(({ mode }: ConfigEnv): UserConfig => {
IconsResolver({ enabledCollections: ["ep"] }), IconsResolver({ enabledCollections: ["ep"] }),
], ],
// 指定自定义组件位置(默认:src/components) // 指定自定义组件位置(默认:src/components)
dirs: ["src/**/components"], dirs: ["src/components", "src/**/components"],
// 配置文件位置 (false:关闭自动生成) // 配置文件位置 (false:关闭自动生成)
dts: false, dts: false,
// dts: "src/types/components.d.ts", // dts: "src/types/components.d.ts",