Vite基础 —— 配置vite配置文件

本文介绍了Vite作为新型前端构建工具的基本概念,包括其与webpack的区别,以及为何需要前端构建工具。详细讲解了Vite的安装、启动、配置方法,如设置源映射、输出目录、浏览器兼容目标等,还提到了开发服务器配置和代理规则的设定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vite

Vite用来做哪些工作

Vite是一种新型的前端构建工具,它的功能类似于webpack,但是服务启动速度和更新速度优于webpack。

  • 为什么需要构建工具

    • 有5个方向上的需求,使我们需要构建工具

      • 预处理

        • 在大型的项目中,我们经常使用SCSS、TS等需要经过编译才可以执行的语言,构建工具可以帮助我们完成这些工作。
      • eslint

        • 构建工具可以帮助完成eslint的检查。
      • 资源压缩

        • 在大型项目中,我们一般将业务逻辑单独写在以一个文件中,但是如果到了生产环境,用户仍然需要加载这么多的文件,毫无疑问会影响性能。所以在发布到生产环境之前,需要使用构建工具将逻辑压缩合并。
      • 静态资源替换

        • 在生产环境中,静态资源的地址很可能和开发环境中不一致,可能是由于在资源压缩的过程中的JS合并、CSS合并导致,也可能是因为应用了CDN,这些大量重复的静态资源的url替换都可以借助构建工具帮助我们完成替换。

Vite的使用方法

安装Vite

  • 2种方法用于安装Vite(npm和yarn,适用于安装的同时初始化一个vite项目)

    • npm create vite@latest
    • yarn create vite(可以完成安装并创建一个Vite+Vue/React的项目)
  • 如果想为项目下载vite依赖

    • npm install vite@latest

使用Vite

  • 想要运行一个vite项目需要经过下面几步

    • 安装依赖

      • 安装vite并创建一个vite项目之后,由于已经初始化了package.json文件,但是没有node_modules文件夹,所以,我们需要执行npm install命令。

        • 执行完成npm install命令之后,会将下载的依赖放在node_modules文件夹下,并且创建package-lock.json文件用于锁定依赖版本。
    • 启动vite服务

      • 执行npm run dev命令。

配置vite

  • vite的配置文件

    • vite的默认配置文件

      • 类似于webpack的webpack.config.ts,vite配置文件是vite.config.ts
    • 为vite指定一个配置文件

      • 执行vite --config my-config.ts,将会把vite的配置文件设置为my-config.ts。
  • 构建配置

    • 构建配置由一个对象build提供。

    • 常用的构建选项

      • build.sourcemap

        • 用于决定构建后是否生成source map文件。(默认值是false)。

          • 接受的类型

            • boolean

              • true

                • 将会在构建后创建一个独立的source map文件。
              • false

                • 不会创建source map文件。
            • ‘inline’(TS字面量类型)

              • source map将作为一个data URL附加在输出文件。
            • ‘hidden’(TS字面量类型)

              • 将会创建一个独立的source map文件,只是bundle文件中的注释将不被保留。(工作原理和true类似)。
          • 默认值

            • false
      • build.outDir

        • 用于指定输出路径(是一个相对路径,相对于项目根目录而言)。

          • 接受类型

            • string
          • 默认值

            • ‘dist’
      • build.target

        • 用于处理浏览器兼容性的问题,设置最终构建的浏览器兼容目标。

          • 接受类型

            • string
            • string[]
          • 默认值

            • ‘modules’

              • 表示构建会兼容支持原生ES模块的浏览器。
      • build.assetsDir

        • 用于指定生成静态资源的存放路径。(是一个相对路径,相对于build.outDir)。

          • 接受类型

            • string
          • 默认值

            • ‘assets’
      • build.assetsInlineLimit

        • 用于指定一个阈值,当小于这个值的import或引用资源将内联为base64编码。(用来减少http请求)。

          • 接受的类型

            • number
          • 默认值(单位字节,Byte)

            • 4096(4KB)
      • build.rollupOptions

        • 用于定义底层的Rollp打包配置。

          • 接受类型

            • RollupOptions
          • 默认值

  • 开发服务器配置

    • 开发服务器配置由server对象提供。

    • 常用的开发服务器选项

      • server.proxy

        • 用于为开发服务器配置自定义代理规则。(使用http-proxy库)。

          • 接受类型(一个{key: options}的对象)

            • Record<string, string | ProxyOptions>
            • 如果key以 ^ 开头,那么将被视为正则表达式。
  • 共享配置

    • root

      • 用于指定项目根目录,也就是index.html文件所在的位置。(可以是绝对路径,也可以是相对于配置文件的相对路径)。

        • 接受类型

          • string
        • 默认值

          • process.cwd()
    • base

      • 用于指定开发或生产环境的公共基础路径。(构建后所有静态资源的路径都将根据base提供的路径重写)。

        • 接受类型

          • string
        • 默认值

          • /
    • publicDir

      • 用于存放静态资源服务的文件夹,该目录在文件开发期间在根目录处,在构建后,将会复制到outDir的根目录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值