Vite常用插件配置

1.首先npm镜像切换

javascript 复制代码
npm config get registry //查看当前镜像
npm config set registry https://registry.npmjs.org/  //国外 
npm config set registry https://registry.npmmirror.com/ //淘宝

2.环境变量的配置

.env.development的内容如下

javascript 复制代码
VITE_APP_BASE_URL = http://xxx:90/api
NODE_ENV='development'

在vite.config.js使用环境变量的VITE_APP_BASE_URL变量

javascript 复制代码
import { loadEnv } from 'vite'
const env = loadEnv(mode, process.cwd())
console.log(env.VITE_APP_BASE_URL)

server: {
      open: true,
      port: 8081,
      proxy: {
        '/api': {
          target: env.VITE_APP_BASE_URL,
          changeOrigin: true,
          rewrite: (path) => path.replace(/^\/api/, ''),
        },
      },
    },

3.SCSS全局变量

vite.config.js配置

javascript 复制代码
css: {
    preprocessorOptions: {
        scss: {
          additionalData: `@import "${resolve(__dirname, 'src/styles/variables.scss')}";`
        }
   }
}

在其他地方就能只用variables.scss的变量

javascript 复制代码
// 字体颜色
$primary-color: #3498db; // 主色
$secondary-color: #2ecc71; // 次色

4.SVG图标配置

javascript 复制代码
npm install vite-plugin-svg-icons -D

vite.config.js配置

javascript 复制代码
import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
plugins: [
      vue(),
      createSvgIconsPlugin({
        iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')],
        symbolId: 'icon-[name]',
      }),
    ],

在main.js引入

javascript 复制代码
import 'virtual:svg-icons-register'

新建SvgIcon.vue

javascript 复制代码
<template>
  <svg aria-hidden="true">
    <use :href="symbolId" :fill="color" />
  </svg>
</template>

<script>
import { defineComponent, computed } from 'vue'

export default defineComponent({
  name: 'SvgIcon',
  props: {
    prefix: {
      type: String,
      default: 'icon',
    },
    name: {
      type: String,
      required: true,
    },
    color: {
      type: String,
      default: '#333',
    },
  },
  setup(props) {
    const symbolId = computed(() => `#${props.prefix}-${props.name}`)
    return { symbolId }
  },
})
</script>

在组件怎么使用src/assets/icons的图标

javascript 复制代码
<template>
  <div>
    <SvgIcon name="home"></SvgIcon>
  </div>
</template>

<script>
import SvgIcon from '@/components/SvgIcon.vue'
</script>

5.Vite自动导入插件,自动import ref,reactive,computed等

javascript 复制代码
npm install unplugin-auto-import -D

vite.config.js配置

javascript 复制代码
import AutoImport from 'unplugin-auto-import/vite'
plugins: [
      vue(),
      // 自动导入vue变量
      AutoImport({
        imports: ['vue', 'vue-router', 'pinia'],
        dts: false,
      })
    ]

6.prettier配置

javascript 复制代码
npm install prettier -D

新建文件.prettierignore 和 .prettierrc

.prettierrc代码

javascript 复制代码
{
  "printWidth": 120,
  "tabWidth": 2,
  "useTabs": false,
  "semi": false,
  "endOfLine": "auto",
  "singleQuote": true,
  "trailingComma": "all",
  "quoteProps": "as-needed",
  "bracketSpacing": true,
  "arrowParens": "always"
}

在package.json配置自动格式化脚本

javascript 复制代码
 "scripts": {
    "format": "prettier --write src/"
  },
相关推荐
Heo12 小时前
关于XSS和CSRF,面试官更喜欢这样的回答!
前端·javascript·面试
7***A44312 小时前
Vue自然语言处理应用
前端·vue.js·自然语言处理
徐小夕13 小时前
耗时一周,我把可视化+零代码+AI融入到了CRM系统,使用体验超酷!
javascript·vue.js·github
5***a97513 小时前
React Native性能优化技巧
javascript·react native·react.js
A3608_(韦煜粮)13 小时前
深入理解React Hooks设计哲学与实现原理:从闭包陷阱到并发模式
javascript·性能优化·react·前端开发·react hooks·并发模式·自定义hooks
玉宇夕落13 小时前
🔁 字符串反转 × 两数之和:前端面试高频题深度拆解(附5种反转写法 + 哈希优化)
javascript
神秘的猪头13 小时前
🧱 深入理解栈(Stack):原理、实现与实战应用
前端·javascript·面试
明教教主张5G13 小时前
Vue响应式原理(13)-ref实现原理解析
前端·vue.js
StockPP13 小时前
印度尼西亚股票多时间框架K线数据可视化页面
前端·javascript·后端
kungggyoyoyo14 小时前
TRAE中国版SOLO模式上线!我用它从0到1开发了一款AI小说编辑器
前端·vue.js·trae