vue3使用unplugin-auto-import全局引用ref、onMounted等基本方法

发现有些vue3项目中没有使用import导入  ref、onMounted、getCurrentInstance等常见的函数也可以直接使用,这样就实现了不需要每个导入,全局配置ref等函数的功能,这是依赖一个插件unplugin-auto-import。

未引入插件展示

<script setup>
import {ref} from 'vue'
const a =ref(" 测试")
</script>

引入插件后展示

<script setup>
const a =ref(" 测试")
</script>

引入方法

1、引入插件
npm i -D unplugin-auto-import
2、vite.config.js中配置
import AutoImport from 'unplugin-auto-import/vite'
export default defineConfig({
plugins: [
    AutoImport({
      //自动引入
      imports: ["vue", "vue-router","pinia"],
    }),
  ],
})

### 配置 `unplugin-auto-import` 在 Vite 中的用法 为了在 Vite 项目中使用 `unplugin-auto-import` 插件,可以按照以下方法进行配置。此插件的主要功能是从指定模块自动导入 API 或函数到全局范围,从而减少手动引入的工作量。 #### 安装依赖项 首先,在终端执行以下命令安装必要的包: ```bash npm install unplugin-auto-import --save-dev ``` 或者如果使用的是 Yarn,则运行: ```bash yarn add unplugin-auto-import --dev ``` #### 修改 `vite.config.ts` 接着,在项目的根目录下找到或创建 `vite.config.ts` 文件,并将其更新为支持 `unplugin-auto-import` 的配置。以下是完整的配置示例[^1]: ```typescript import { defineConfig } from &#39;vite&#39;; import vue from &#39;@vitejs/plugin-vue&#39;; import AutoImport from &#39;unplugin-auto-import/vite&#39;; export default defineConfig({ plugins: [ vue(), AutoImport({ imports: [&#39;vue&#39;], // 自动导入 Vue 提供的相关函数 dts: &#39;./auto-imports.d.ts&#39; // 自动生成声明文件路径 }) ], build: { target: &#39;esnext&#39;, outDir: &#39;dist&#39; } }); ``` 上述代码片段通过 `AutoImport()` 方法指定了需要自动导入的内容以及生成对应的 TypeScript 声明文件的位置。 #### 关于 ESM 和 CJS 兼容性问题 当涉及到 CommonJS 模块时,可能会遇到无法正确识别默认导出的情况。此时可以通过调整 tsconfig.json 设置来解决兼容性问题。具体来说,将 `compilerOptions.esModuleInterop` 设定为 `true` 可以帮助处理此类情况[^2]。例如: ```json { "compilerOptions": { "esModuleInterop": true, ... } } ``` 这样做的目的是让 TypeScript 编译器能够更好地桥接 ES Modules 和 CommonJS 模块之间的差异。 #### 测试效果 完成以上步骤后重新启动开发服务器并尝试访问组件中的某些常用 Vue 函数(如 `ref`, `reactive`),无需显式地从 `&#39;vue&#39;` 导入它们即可正常使用--- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值