Vue+vite创建项目关于vite.config.js文件的配置

news2024/11/19 18:35:50

Vue+vite创建项目关于vite.config.js文件的配置

Vue项目创建时,我们见过vue-cli 创建项目和webpack 创建项目等方式。
现在Vue 3版本使用npm/pnpm create vue@latest 创建项目,是搭配使用vite工具构建的。
创建完成的项目,最明显的去别就是,项目配置文件命名不同,当然,配置语法也有不同。

vue-cli 创建的项目,项目配置文件文件名为vue.config.js,webpack 创建项目的项目配置文件文件名为webpack.config.js,而vite工具构建完成的项目,项目配置文件文件名为vite.config.js

在这里插入图片描述

先贴一个vite官方地址:https://cn.vitejs.dev/

关于vite.config.js的配置语法:

创建项目之后,默认生成的vite.config.js文件比较简单,只有简单几行代码:

import { fileURLToPath, URL } from 'node:url'

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

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
})

这样直接运行项目或者build大包代码也基本上没有什么问题,但是往往无法满足我们的需要,因此需要自己手动添加属性配置。
简单解释:

import { fileURLToPath, URL } from 'node:url'

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

// 这里是创建文档之后vite贴出的官方文档地址
// https://vitejs.dev/config/
export default defineConfig({
  // 需要用到的插件数组,这里是用vue
  plugins: [vue()],
  resolve: {
  	// resolve.alias属性配置文件自定义路径。如下:设置‘@’代替‘./src’
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
})

根据需要添加自定义配置,比如项目运行时的配置及项目打包输出的打包配置。

import { fileURLToPath, URL } from 'node:url'

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

// 这里是创建文档之后vite贴出的官方文档地址
// https://vitejs.dev/config/
export default defineConfig({
  // 需要用到的插件数组,这里是用vue
  plugins: [vue()],
  resolve: {
  	// resolve.alias属性配置文件自定义路径。如下:设置‘@’代替‘./src’
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  
  // 开发服务器配置server
  server: {
  	// host指定服务器应该监听哪个 IP 地址。 如果将此设置为 0.0.0.0 或者 true 将监听所有地址,包括局域网和公网地址。
    host: true,
    // 开发服务器端口配置。(注意:如果配置的端口已经被使用,Vite 会自动尝试下一个可用的端口,要看项目运行时最终生成的端口地址。)
    port: '9081',
    // open项目运行完毕是否自动在默认浏览器打开
    open: true,
    // 是否使用https,需要证书
    https: false,
    // proxy代理配置
    proxy: {
      '/api': {
        target: 'http://xxxx',
        changeOrigin: true,
        rewrite: path => path.replace(/^\/api/, '')
      }
    }
  },
  // build打包构建配置
  build: {
  	// 打包输出的文件夹名称
    outDir: 'dist',
    // 静态资源文件保存的文件夹名称
    assetsDir: 'static',
    // 是否启用css代码拆分
    cssCodeSplit: true,
    // 打包构建后是否生成 source map 文件。
    sourcemap: true,
    // 打包构建时压缩混淆使用的混淆器
    minify: 'esbuild',
    // 自定义底层的 Rollup 打包配置(Rollup文档地址:https://cn.rollupjs.org/configuration-options/)
    rollupOptions: {
      // 输出配置
      output: {
      	// 输出的文件自定义命名
        chunkFileNames: 'js/[name]-[hash].js',
        entryFileNames: 'js/[name]-[hash].js',
        assetFileNamesL: '[ext]/[name]-[hash].[text]'
      }
    }
  }
})

END

当然,还有很多配置属性起到不同的效果,这里暂时记录这些,有兴趣的大佬可以看看官方文档。

如果对你有帮助,记得点赞噢(~~)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/691613.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【硬件自动化软件设计及实现】如何设计并实现!

今天来聊聊关于硬件方向的自动化软件设计及实现,后面我会用实例来让我们更加深入的了解硬件自动化,首先开发工具选择的是python语言,为啥选择python语言呢,因为他的语法比较简洁,外置库非常多,反正就是对于做自动化方面很实用就对了。 1.硬件自动化测试大致分为三个阶段实…

Redis 来了,Navicat 用户炸开了锅 | 文末附免单王获奖名单

近期,Navicat 的后台热闹无比!自 2023 年 5 月 Navicat Premium 16.2 Beta 中文版上线以来,童鞋们的留言如潮水般涌来。6 月中旬,我们正式发布了 Navicat Premium 16.2 与 Navicat for Redis,赋予了Navicat 更卓越的功…

JMeter工具接口性能压力测试分析与优化

目录 前言: 一、具体测试结果如下: 二、初始应用配置调整: 三、分析解决过程: 总结: 前言: 最近公司做的项目,要求对相关接口做性能压力测试,在这里记录一下分析解决过程。 压…

[Pytorch]导数与求导

文章目录 导数与求导一. 标量 向量 矩阵 的导数二.Pytorch中的反向求导.backward()三.非标量求导 导数与求导 一. 标量 向量 矩阵 的导数 标量,向量,矩阵间求导后的形状: y\x标量x(1)向量 x(n,1)矩阵 X(n,k)标量y(1)(1)(1,n)(k,n)向量 y(m…

Unity Image/GL实现一个框选功能吧

场景准备 准备一张框选背景图 导入到unity之后,修改 Texture Type 为 Sprite,(根据图片需要)在 Sprite Editor 中 编辑 九宫格格式。图片样式的不一致,设置的九宫格格式也不一致。本例中虚线部分需要等距离平铺&…

Visual C++类的继承及类中成员的访问特性——搞懂public、protected、private

我是荔园微风,作为一名在IT界整整25年的老兵,今天来说说Visual C中类的继承及类中成员的访问特性,也就是来搞懂public、protected、private这三个东西。 很多人搞不清楚这三个东西,并且很容易弄错,其实不是学习的人的…

vr全景在线虚拟展馆节约企业成本费用

博物馆作为人们了解历史、文化和艺术的重要场所,现在可以通过VR全景技术来进行展览,让参观者身临其境地感受历史文化的魅力。本文将介绍博物馆VR全景的特点、优势,以及如何使用VR全景技术来使得博物馆的展览和教育活动更丰富。 参观者可以对内…

【Linux】权限理解

Linux权限理解 shell外壳运行原理为什么我们不是直接访问操作系统?外壳程序的意义 权限的概念与操作用户的权限如何进行Linux下用户身份的切换? 角色和文件的权限权限是什么?Linux中文件的类型是如何被确定的?权限与角色的关系权限与文件属性…

玩机搞机---修改系统固件不开机 安卓13去除系统app签名验证的几种方法

谷歌在安卓13中对系统应用添加了一层校验验证,你如果修改了系统app.那么原有的签名加载后过不去验证,会导致进不去系统卡第一屏或者进入系统后修改的app错误等等故障。 Android 13增加了新的apk签名校验机制,现在开机中它会对所有系统分区&a…

Hive中怎样创建和查询视图信息?

视图是从数据库的数据表中选取出来的数据组成的逻辑窗口,它是一个虚拟机表。引入视图后,用户可以将注意力集中在关心的数据上,如果数据来源于多个基本表结构,并且搜索条件比较复杂时,需要编写的查询语句就会比较烦琐&a…

hivesql 将数据处理成复杂json

类型一 原数据:bankid是array类型 目标数据: {"bankname": ["SPDB", "WS_HBBANK", "mytest"],"grid": [{"name": "阶段1","values": ["38.0,1.0,1.0"]}…

安全生产月评选活动-优秀的“安全之星”,塑造榜样力量

安全生产月评选活动-优秀的“安全之星”,塑造榜样力量。 推荐功能:投票 企业可以举办安全生产月评选活动,选出优秀的“安全之星”,进行内部评选,塑造榜样力量。 首先,让我们先来了解一下“安全生产月评选活…

MYSQL各种log

本章纲要 1、mysql主从复制是怎么实现的(binlog,relaylog) 2、事物执行原理是怎么保证ACID的(redolog,undolog) 一、Mysql是怎么实现主从复制的 数据库主从设计的好处: 1、实现读写分离,方便扩展&#…

MySQL 磁盘爆了,是 optimize table 的锅

2023-06-26 22:17左右,收到某系统的主库磁盘使用率告警。2023-06-26 23:02左右收到该系统的从库磁盘使用率告警。 收到告警后,登录数据库查看各表的磁盘使用。 经分析发现DB存在一个当日的备份表t_eap_sys_navigation_log_bak_20230626 ,且在…

4077:出栈序列统计

codeup【递归入门】出栈序列统计_codeup编程_战斗的咸鱼的博客-CSDN博客 #include<iostream> using namespace std; int n,sum,ans; void dfs(int out,int in,int not_in){if(outn){ans;return;}if(in>0) dfs(out1,in-1,not_in);if(not_in>0&&in<n) dfs…

Vue模板编译

文章目录 导文Vue模板编译是什么&#xff1f;模拟编译模板总结 导文 Vue框架使用了模板编译的方式来将Vue模板转换为可执行的JavaScript代码。这个编译过程在运行时由Vue的编译器完成。 在Vue中&#xff0c;模板是以HTML标记的形式编写的&#xff0c;其中可以包含Vue的特殊语法…

【探索 Kubernetes|作业管理篇 系列 14】StatefulSet 存储状态

前言 大家好&#xff0c;我是秋意零。 在上一篇中&#xff0c;我们讲解了 StatefulSet 的拓扑状态&#xff1b;我们发现&#xff0c;它的拓扑状态&#xff0c;就是顺序启动/删除、Pod 名称编号命名、将 Pod 名称设为 Hostname 名称、通过 Service 无头服务的 DNS 记录访问。 …

基于Python的海量豆瓣电影、数据获取、数据预处理、数据分析、可视化、大屏设计项目(含数据库)

目录 项目介绍研究背景国内外研究现状分析研究目的研究意义研究总体设计网络爬虫介绍豆瓣电影数据的采集数据预处理大数据分析及可视化豆瓣影评结构化分析 大屏可视化文本可视化总结每文一语 项目介绍 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博…

虹科DataHub:连接工业自动化的桥梁,引领企业数字化转型

一、前言 随着智能制造、工业互联网等新一代信息技术的不断发展&#xff0c;IT和OT融合已成为未来制造业数字化转型的重要趋势。得益于开放的系统架构和创新的软件应用&#xff0c;OT&#xff08;工业自动化技术&#xff09;和信息技术&#xff08;IT&#xff09;系统之间的数…

在windows系统中映射网络驱动器时,如何通过非455端口远程访问Linux服务器的Samba服务

声明 通常情况下&#xff0c;在windows中通过Linux服务器的Samba服务去映射网络驱动器时候&#xff0c;一般默认就是直接填入内网Linux服务器ip即可&#xff0c;它会默认445端口。若是我的windows并不和Linux服务器在一个网段时&#xff0c;该如何操作呢&#xff1f; 1 用管理…