vite学习笔记

1、vite的index.html放在根目录

2、package.json 中的 "dev": "vite --open", --open表示浏览器自动打开

3、eslint配置:A、pnpm i eslint -D。B、npx eslint --init(生成eslint配置文件:eslint.cjs),还要继续安装 npm install -D eslint-plugin-import eslint-plugin-vue eslint-plugin-node eslint-plugin-prettier eslint-config-prettier eslint-plugin-node @babel/eslint-parser

4、配置 prettier :npm install -D eslint-plugin-prettier prettier eslint-config-prettier

5、修改src别名,修改后src目录可以用@替代,例如:import App from "@/App.vue";

vite.config.ts 文件红色部分如下:

import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      "@": path.resolve("./src"), //相对路径别名配置,使用@替代src
    },
  },
});
tsconfig.json文件红色部分如下:
{
  "compilerOptions": {
    "target": "ESNext",
    "useDefineForClassFields": true,
    "module": "ESNext",
    "moduleResolution": "Node",
    "strict": true,
    "jsx": "preserve",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "esModuleInterop": true,
    "lib": ["ESNext", "DOM"],
    "skipLibCheck": true,
    "noEmit": true,
    "baseUrl": "./", //解析非相对模块的基地址,默认是当前目录
    "paths": {
      //路径映射,相对于baseUrl
      "@/*": ["src/*"]
    }
  },
  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
  "references": [{ "path": "./tsconfig.node.json" }]
}
6、SVG图标配置:npm install vite-plugin-svg-icons -D
main.ts导入
//svg插件需要配置代码
import 'virtual:svg-icons-register'
 
vite.config.ts添加红色部分
//引入svg需要用到插件
import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
export default defineConfig({
  plugins: [
    vue(),
    createSvgIconsPlugin({
      iconDirs: [path.resolve(process.cwd(), "src/assets/icons")],
      symbolId: "icon-[dir]-[name]",
    }),
  ],
  resolve: {
    alias: {
      "@": path.resolve("./src"), //相对路径别名配置,使用@替代src
    },
  },
});
 
vue文件中使用方式:
    <!-- 测试SVG图标使用 -->
    <!-- svg:图标外层容器节点,内部需要与use标签结合使用 -->
    <svg>
      <!-- xlink:href执行哪一个图标,属性值必须为#icon-图标文件名 -->
      <!-- use标签fill属性可以设置图标的颜色 -->
      <use xlink:href="#icon-phone" fill="green"></use>
    </svg>
7、mock数据
npm install -D vite-plugin-mock mockjs
官网资料
https://github.com/vbenjs/vite-plugin-mock/blob/main/README.zh_CN.md
如果遇到,如下错误

......./node_modules/vite-plugin-mock/dist/index.mjs:128
if (!require.cache) {^

ReferenceError: require is not defined

则在node_modules/vite-plugin-mock/dist/index.mjs文件添加:

import { createRequire } from 'node:module';
const require=createRequire(import.meta.url)
 
posted @ 2023-06-14 16:24  Ratooner  阅读(128)  评论(0编辑  收藏  举报