vue3、uniapp-vue3模块按需引入

  • 没有使用插件
    在这里插入图片描述

  • 使用插件,模块自动导入
    在这里插入图片描述
    安装:

     npm install -D  unplugin-auto-import            // 自动导入依赖包
      
     npm install -D unplugin-vue-components     // 按需引入自定义组件
    

    vite.config.js (uniapp没有此文件,在项目根目录下创建)

针对WEB-VUE3

import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
// 如果安装了element-plus,也按需引入Element-plus组件
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
export default defineConfig({
  server: {
    hmr: true, // 开启热更新
  },
  plugins: [
    vue(),
    AutoImport({
      resolvers: [ElementPlusResolver()],
      include: [
        /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
        /\.vue$/,
        /\.vue\?vue/, // .vue
      ],
      imports: ["vue", "vue-router"], // 自动导入依赖包
      dts: "typings/auto-imports.d.ts", // 针对ts类型定义文件
      dirs: ['./src/api'], // 自动导入接口文件
    }),
    Components({
      resolvers: [ElementPlusResolver()]  // 自动导入组件
    })
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))  // @替换src
    }
  }
})

可能出现的问题:

一、自动导入依赖包不生效, ESLint 报“未定义”的错误

在这里插入图片描述

在 ".eslintrc.js"文件中配置:
 
 './eslintrc-auto-import.json'

针对 uni-app(vue3)

import { defineConfig } from "vite";
import uni from "@dcloudio/vite-plugin-uni";
import AutoImport from "unplugin-auto-import/vite";
 
 
export default ({}) => {
  return defineConfig({
    plugins: [
      uni(),
      AutoImport({
        include: [
          /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
          /\.vue$/,
          /\.vue\?vue/, // .vue
        ],
        imports: ["vue", "uni-app","vue-router"],
        dts: "typings/auto-imports.d.ts", // 针对ts类型定义文件
        dirs: ['./src/api'], // 自动导入接口文件
      }),
    ],
  });
};

所有针对vue、uniapp、vue-router的依赖导入都不用手动去写了

另外:

uniapp 如果无法使用npm,需初始化npm工程

npm  init  -y
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值