vite项目配置alias

来源:1-2 什么是 Vite

LayLowMay

2021-12-15

老师,如何在vite项目中针对vue3,配置alias不仅让代码可以运行,还能让vscode也有路径的补全提示,比如@代表/src,然后后面弹出补全提示,可以方便开发时引入文件,我这样的做法是否可行呢?

vite.config.ts

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import path from 'path'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(), vueJsx()],
  // 增加路径解析
  resolve: {
    alias: {
      "@": "/src",
    }
  },
  base: './'
})

tsconfig.json

{
  "compilerOptions": {
    "target": "esnext",
    "useDefineForClassFields": true,
    "module": "esnext",
    "moduleResolution": "node",
    "strict": true,
    "jsx": "preserve",
    "sourceMap": true,
    "resolveJsonModule": true,
    "esModuleInterop": true,
    "lib": ["esnext", "dom"],
    "isolatedModules": true, // 因为vite编译typescript只针对单文件的语法,但ts本来需要关联不同模块文件信息,因此需要告诉typescriptx现在ts环境不支持模块间关联类型校验
    // 增加路径解析
    "experimentalDecorators": true,
    "baseUrl": "./",
    "paths": {
      "@/*": [
        "src/*"
      ]
    },
  },
  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
  "exclude": ["node_modules"]
}

vscode 安装插件 Path Intellisense

vscode settings.json增加配置

{
    ...
    "path-intellisense.mappings": {
       "@": "${workspaceRoot}/src",
       "/": "${workspaceRoot}/"
     }
    ...
}



写回答

1回答

Jokcy

2021-12-21

你配置玩能正常运行么?有没有什么报错?

0
0

Vite 从入门到精通,玩转新时代前端构建法则

从使用到原理到实战的【前端构建】高效学习路线,一次性掌握Vite

788 学习 · 104 问题

查看课程