MineAdmin 交流群

官方QQ群: 150105478

Skip to content

自動導入

説明

在之前的 2.x 以及更古老的版本。

在使用 Vue API 的時候,都需要在文件內寫入 import { ref, ... } from 'vue' 等等語句。 現在 vite 經過發展,社區的插件已經非常豐富,基於此,我們可以簡化代碼,提高開發效率,感謝那些大神提供的插件。

説明

現在在開發 *.vue、*.ts、*.tsx 時,不需要手動引入以下 API 或者組件:

  • Vue的所有api
  • VueRouter
  • Pinia
  • 所有的 store 文件:./src/store/modules/*
  • hooks下自動導入目錄:./src/hooks/auto-imports/*
  • 以及 ./src/components/ 下的所有組件 (只有 *.vue 類型文件可以不顯性寫導入)

自定義自動導入

./vite 目錄下,有兩個文件:auto-import.tscomponents.ts 可定義自動導入的包、函數、組件等。

自動導入包、函數

./vite/auto-import.ts 中,可以定義自動導入的包或函數,例如:vue-routerpiniaaxios

ts
export default function createAutoImport() {
  return autoImport({
    // 這裏可以自定義導入的
    imports: [
      'vue',
      'vue-router',
      'pinia',
    ],
    dts: './types/auto-imports.d.ts',
    // 這裏可加入自定義導入的函數庫或者其他ts文件
    dirs: [
      './src/hooks/auto-imports/**',
      './src/store/modules/**',
    ],
  })
}

自動導入自定義組件庫

./vite/components.ts 中,可以定義自動導入的組件庫目錄,系統內 ./src/components 目錄下的組件,無需顯性導入。

ts
  return components({
  dirs: ['src/components'],
  include: [/\.vue$/, /\.vue\?vue/, /\.tsx$/],
  dts: './types/components.d.ts',
})

致力于为品牌和企业创造价值