vue3杂记

环境配置(使用vite创建的项目)

使用哪种环境,是由package.json中的命令脚本中的 --mode 选项决定的。

1.在项目根目录添加.env文件,如:

  • .env # 这个文件名默认是用于开发环境,npm run dev 时会加载
  • .env.test # 测试环境
  • .env.prod # 生产环境

文件内容示例:

复制代码
VITE_API_URL = http://localhost:8081
VITE_ACCESSKEY = 123456
MY_PASSWORD = 123456 # 这一个不会被加载

环境变量名必须以"VITE_"开头的才会被加载。

2.修改package.json,定义要运行的命令:

复制代码
{
  
  "scripts": {
    "dev": "vite",
    "test": "vite --mode test", # 指定model是test,则会加载.env.test
    "build:prod": "vue-tsc -b && vite build --mode prod", # 指定model为prod,则会加载.env.prod
    "build": "vue-tsc -b && vite build",
    "preview": "vite preview"
  },
}

控制台中运行命令:

  • npm run dev # 将加载.env文件
  • npm run test # 将加载.env.test文件
  • npm run build # 将加载.env文件进行打包
  • npm run build:prod # 将加载.env.prod文件进行打包

3.代码中使用:

复制代码
const apiBaseUrl = import.meta.env.VITE_API_URL

常用的插件安装

  • 创建vue3项目:npm create vue@latest
  • 安装路由插件:npm i vue-router
  • pinia集中状态(数据)管理:npm install pinia
  • pinia持久化组件:npm install pinia-plugin-persistedstate
  • 安装 uuid 或 nanoid 生成ID:npm install nanoid
  • 安装axios:npm install axios
  • 安装 element plus : npm i element-plus
  • 安装图标:npm install @element-plus/icons-vue

使用@定义为src目录:

1.在文件中添加(添加了vue3运行时才能识别):

复制代码
import path from 'path'

export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src'),
    },
  },
})

2.在文件tsconfig.app.json中添加(添加了vscode才能识别路径):

复制代码
"compilerOptions": {

    "baseUrl": ".",
    "paths": {
      "@/*": [
        "src/*"
      ]
    }

  }
相关推荐
晚霞的不甘8 分钟前
Flutter for OpenHarmony手势涂鸦画板开发详解
前端·学习·flutter·前端框架·交互
We་ct13 分钟前
LeetCode 73. 矩阵置零:原地算法实现与优化解析
前端·算法·leetcode·矩阵·typescript
晚霞的不甘14 分钟前
Flutter for OpenHarmony 实现动态天气与空气质量仪表盘:从 UI 到动画的完整解析
前端·flutter·ui·前端框架·交互
~小仙女~17 分钟前
组件的二次封装
前端·javascript·vue.js
这是个栗子21 分钟前
AI辅助编程(一) - ChatGPT
前端·vue.js·人工智能·chatgpt
2501_9444480022 分钟前
Flutter for OpenHarmony衣橱管家App实战:预算管理实现
前端·javascript·flutter
Remember_99325 分钟前
Spring 核心原理深度解析:Bean 作用域、生命周期与 Spring Boot 自动配置
java·前端·spring boot·后端·spring·面试
笨蛋不要掉眼泪28 分钟前
Redis持久化解析:RDB和AOF的对比
前端·javascript·redis
心.c30 分钟前
Vue3+Node.js实现文件上传分片上传和断点续传【详细教程】
前端·javascript·vue.js·算法·node.js·哈希算法
We་ct31 分钟前
LeetCode 48. 旋转图像:原地旋转最优解法
前端·算法·leetcode·typescript