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'
// 组件自动导入
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
### 安装和配置 `vue-pdf-embed` 组件 #### 1. 安装依赖包 为了在 UniApp Vue3 项目中集成 `vue-pdf-embed`,先通过 npm 或 yarn 安装该库。 对于 npm 用户,在项目的根目录下执行如下命令来安装所的软件包[^1]: ```bash npm install vue-pdf-embed ``` Yarn 用户则可以使用以下指令完成相同操作: ```bash yarn add vue-pdf-embed ``` #### 2. 配置 Webpack 和 Babel (如果必要) 由于 UniApp 使用了自定义构建工具链,可能要调整 webpack 的配置以支持 PDF.js的一些特性。通常情况下,默认设置已经足够;但如果遇到问题,则应查阅官方文档了解具体修改方法。 另外,考虑到兼容性和性能优化方面的求,建议确认 babel 编译器版本是最新的,并适当增加 polyfill 支持老式浏览器。 #### 3. 创建并注册全局组件 创建一个新的文件夹用于存放公共组件,比如命名为 `/components/common/` ,在此路径内新建名为 `PdfViewer.vue` 文件作为封装后的 pdf 查看器: ```html <template> <div class="pdf-container"> <!-- 这里引入 vue-pdf-embed --> <vue-pdf-embed :source="url"/> </div> </template> <script setup lang="ts"> import { ref } from &#39;vue&#39;; const props = defineProps({ url: String, }); // 可选:处理加载状态或其他逻辑... </script> <style scoped> /* 自定义样式 */ .pdf-container { width: 100%; height: calc(100vh - 8rem); } </style> ``` 接着,在 main.ts 中导入此组件并将其设为全局可用: ```typescript import PdfViewer from &#39;@/components/common/PdfViewer.vue&#39;; app.component(&#39;PdfViewer&#39;, PdfViewer); ``` #### 4. 应用场景实例化 现在可以在任何页面或子组件中轻松调用 `<PdfViewer>` 来显示指定 URL 地址上的 PDF 文档了。例如,在某个 .vue 页面文件中的模板部分加入下面这段代码即可实现基本功能展示: ```html <PdfViewer url="/path/to/sample.pdf"></PdfViewer> ``` 以上就是在 UniApp Vue3 环境下成功部署 `vue-pdf-embed` 插件的方法概述[^2]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值