• vue3+vite 学习 创建项目


    1. 创建项目 pnpm create vite my-vue-app – --template vue
    2. 出现问题 将main.js 改为ts 会出现这个问题
      使用ts时候在路由页面 引入vue文件会出现 找不到模块的错

    在这里插入图片描述: 解决方法:
    pnpm install -D vite-plugin-pages
    pnpm install vue-router
    在src下面创建env.d.ts文件

    /// 
    
    declare module '*.vue' {
    	import { ComponentOptions } from 'vue'
    	const componentOptions: ComponentOptions
    	export default componentOptions
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    vite.config.ts
    在这里插入图片描述

    添加别名,配置~指向src

    在这里插入图片描述
    解决方法:pnpm install @types/node --save-dev

    按需加载 pnpm i unplugin-vue-components -D

    // vite.config.js
    import Components from "unplugin-vue-components/vite";
    
    export default defineConfig({
      plugins: [Components()]
    });
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    pnpm i -D unplugin-auto-import 不用引入ref等
    // vite.config.js
    import AutoImport from "unplugin-auto-import/vite";
    export default defineConfig({
      plugins: [
        AutoImport({
          imports: ["vue", "vue-router"], // 自动导入vue和vue-router相关函数
          dts: "src/auto-import.d.ts", // 生成 `auto-import.d.ts` 全局声明
        }),
      ],
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    css 安装sass

    pnpm install -D sass

    安装 element-plus

    pnpm install element-plus

    // vite.config.js
    import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
    export default defineConfig({
     plugins: [
       Components(
         {
           resolvers:[ElementPlusResolver()]
         }
       ),
       AutoImport({
         resolvers: [ElementPlusResolver()]
       }),
     ],
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    配置.env.development 在页面访问
    1. 新建.env.development文件和package.json同级
    ENV = 'development'
     
    VITE_BASE_API='https://192.168.1.12/'
    
    VITE_BASE_OS='https://192.168.1.12/'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 在package.json同级新建tsconfig.json文件
    {
      "compilerOptions": {
        "types": ["vite/client"] 
      },
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 在src目录下env.d.ts文件中添加
    interface ImportMetaEnv {
    	readonly VITE_BASE_API: string
        readonly VITE_BASE_OS: string
    } 
    
    interface ImportMeta {
      readonly env: ImportMetaEnv
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    1. 页面访问
     console.log("ENV", import.meta.env); //获取环境变量
    
    • 1
    vite-plugin-pages

    目录结构即路由

    eg:
    src/pages/index.vue => /
    src/pages/about.vue => /about
    src/pages/menus/index => /menus
    src/pages/menus/one => /menus/one
    src/pages/[…notFound].vue => 404 路由
    在上面的基础上将vite.config.ts中pages修改

     // 文件路由
    Pages({
      extensions: ["vue", "md", "tsx"],
    }),
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    【原创】分布式之一行代码解决缓存击穿问题
    【记录】深度学习环境配置(pytorch版)
    用队列实现栈-力扣
    结合Navigation组件实现JetPack Compose的界面导航
    生物育种冲刺产业化 国稻种芯-何登骥:营养多元功能性农业
    洛谷-收集邮票-(期望dp+期望的平方+平方的期望)
    jumpserver跳板机堡垒机界面设置及界面功能
    Electron开发环境准备
    Unity编辑扩展:功能篇之Json数据编辑器
    【猿创征文】Vue3 企业级优雅实战 - 组件库框架 - 3 搭建组件库开发环境
  • 原文地址:https://blog.csdn.net/weixin_46463643/article/details/126386995