这几天进入 Vue CLI 官网,发现不能选择 Vue CLI 的版本,也就是说查不到 vue-cli 4 以下版本的文档。

如果此时电脑上安装了 Vue CLI,那么旧版安装的 vue 项目很可能会构建失败。于是我试着运行一些早期开源的 vue 项目,比如vue-element-admin 管理系统,发现会提示 “'vue-cli-service' 不是内部或外部命令,也不是可运行的程序或批处理文件” 。

所以一些已上线项目在构建过程中很可能会出现类似的提示,最直接粗暴的解决办法就是使用 Vue CLI 创建一个新的 vue2 的项目,并修改 package.json 之后再重新安装依赖即可。也可以全局安装一个桥接工具(官网有提及,本人没有尝试)。

我试着去查找官方对此问题更详细的说明,但没有在官方文档中找到此类文档。猜测 vue 官方在引导开发者创建 vue 项目时使用是 Vue CLI(官方文档中现在未发现称其为 Vue CLI 4,而直接称为 Vue CLI,git 上有则其是 vue-cli 4.0的说明文字) 及 Vite(尤雨溪老师开发并推荐的下一代前端开发与构建工具)构建。

在此整理了 Vue CLI 和 Vite 两种构建工具创建 Vue 3 项目的方法及区别,以供参考和学习。

一、Vue CLI 创建 vue3 项目

鉴于 Vue CLI 官网现在没有写明版本,本文也不提以往的 vul-cli 版本。

1.安装 Vue CLI

Vue CLI 4 的包由之前的 vue-cli 改成了 @vue/cli。如果本地已经全局安装了旧版本的 vue-cli,需要先使用 npm uninstall vue-cli -g 卸载。再使用 npm install -g @vue/cli 安装 Vue CLI 最新版本

npm install -g @vue/cli

安装之后,可以访问 vue 命令,并使用 vue --version 检查版本

vue --version

2.使用 “vue create 项目名” 命令创建新项目

vue create new-vue3-project

3.选择项目预设

通过 vue create 命令后,会提示选择预设,如图所示:

选项 说明
Default ([Vue 2] babel, eslint)   安装vue2基本配置的预设
Default (Vue 3 Preview) ([Vue 3] babel, eslint) 安装vue3基本配置的预设
Manually select features   手动选择特性安装

4.选择项目配置功能

使用 Vue CLI 脚手架很方便的一点,就是可以同时安装一些插件。比如通常所说的 Vue 全家桶中的 vue-router、 vuex 可以在此直接选择配置,如图所示:

建议在此选择 Choose Vue versio、Babel、Router、Vuex、CSS Pre-processors 五项。

TypeScript 根据个人技术喜好选择;Progressive Web App (PWA) Support 根据项目需要选择;Linter / Formatter 强烈推荐不要选择,严重影响开发效率和团队合作体验;Unit Testing 和 E2E Testing 并没有什么用,实际工作中测试人员会有自己的工具。

选项 说明
Choose Vue versio 选择vue版本
Babel 安装Babel编译器
TypeScript 支持TypeScript
Progressive Web App (PWA) Support 支持渐进式web应用
Router 安装 Vue 路由
Vuex 安装 Vuex (vue 状态管理模式)
CSS Pre-processors 安装 CSS 预处理器
Linter / Formatter 代码检测和格式校验
Unit Testing 安装单元测试
E2E Testing 安装端到端测试

5.选择 Vue 版本

6.选择路由历史记录模式

如果选择历史记录模式,生产环境需要在服务器设置无页面返回 index 首页的配置,如图所示:

7.选择 CSS 预处理器,可根据个人喜好选择

8.选择配置选项放在专用的配置文件中还是 package.json 中,建议选择 In dedicated config files 放在专用的配置文件中

9.是否保存本次选择的预设

在 vue create 过程中保存的 preset 会被放在你的 home 目录下的一个配置文件中 (~/.vuerc),选择保存后,本地再创建 Vue 项目将可默认本次的配置进行自动安装,有兴趣的可以自己尝试一下。

完成这些步骤后,Vue CLI 会自动安装选择预设的依赖。还有需要的插件,如 Axios 和 Element plus 需要自行安装。

二、Vite 创建 Vue 3 项目

Vite 是一种新型前端构建工具,能够显著提升前端开发体验,Vite 需要 Node.js 版本 >= 12.0.0。

1.使用 Vite 安装 Vue

npm init @vitejs/app

2.输入项目名称,如图所示:

3.选择 vue 框架

4.选择使用 vue (javascript 语法) 或 vue-ts (typescript 语法)

Vite 不支持 vue2,所以不能选择版本,是直接构建 vue3。

配置完成后还需要进入项目并安装依赖。

  cd vite-vue3-project    //进入项目
npm install //安装依赖
npm run dev //构建项目本地开发环境

Vite 创建的项目没有集成 vue-router、vuex 等插件,还需要手动安装。看到这里都可以根据步骤创建 vue3 项目,如有疑问,欢迎留言讨论。

Vue CLI 5 和 vite 创建 vue3.x 项目以及 Vue CLI 和 vite 的区别的更多相关文章

  1. vite创建vue3+ts项目流程

    vite+vue3+typescript搭建项目过程   vite和vue3.0都出来一段时间了,尝试一下搭vite+vue3+ts的项目 相关资料网址 vue3.0官网:https://v3.vue ...

  2. 基于 vite 创建 vue3 全家桶项目(vite + vue3 + tsx + pinia)

    vite 最近非常火,它是 vue 作者尤大神发布前端构建工具,底层基于 Rollup,无论是启动速度还是热加载速度都非常快.vite 随 vue3 正式版一起发布,刚开始的时候与 vue 绑定在一起 ...

  3. vue3 vite2 封装 SVG 图标组件 - 基于 vite 创建 vue3 全家桶项目续篇

    在<基于 vite 创建 vue3 全家桶>一文整合了 Element Plus,并将 Element Plus 中提供的图标进行全局注册,这样可以很方便的延续 Element UI 的风 ...

  4. Vue3 Vite3 多环境配置 - 基于 vite 创建 vue3 全家桶项目(续篇)

    在项目或产品的迭代过程中,通常会有多套环境,常见的有: dev:开发环境 sit:集成测试环境 uat:用户接收测试环境 pre:预生产环境 prod:生产环境 环境之间配置可能存在差异,如接口地址. ...

  5. vite创建vue3项目 vueconfig配置及其备注

    import vue from '@vitejs/plugin-vue' const path = require('path') // vite.config.js # or vite.config ...

  6. vite 搭建Vue3.0项目

    1.全局安装vite:npm install create-vite-app -g 2.创建项目:npx create-vite-app project-name 3.cd project-name ...

  7. 开箱即用 yyg-cli(脚手架工具):快速创建 vue3 组件库和vue3 全家桶项目

    1 yyg-cli 是什么 yyg-cli 是优雅哥开发的快速创建 vue3 项目的脚手架.在 npm 上发布了两个月,11月1日进行了大升级,发布 1.1.0 版本:支持创建 vue3 全家桶项目和 ...

  8. 创建vue3项目

    最近准备做一个vue的小项目关于vue3的使用. 首先在vscode全局安装vue脚手架,npm i -g @vue/cli. 然后创建vue项目,vue create mydemo(项目名). 接下 ...

  9. 如何启动一个Vue3.x项目

    1. 安装node.js 2. cd到项目目录下 3. npm run serve Node.js下载与安装(npm) Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运 ...

随机推荐

  1. python获取邮件信息

    在项目的Terminal中注册模块pypiwin32 python -m pip install pypiwin32 import win32com.client outlook = win32com ...

  2. Servlet处理带尾部斜杠/的URI

    有一个需求:让一个Servlet能够同时处理形如/XXX/YYY和/XXX/YYY/的URI,即URI尾部的斜杠有没有都要能处理到. 很容易想到,做两个URL Pattern/XXX/YYY和/XXX ...

  3. ysoserial payloads/JRMPClient

    ysoserial payloads/JRMPClient 环境:JDK8u102 payloads/JRMPClient可以配合exploit/JRMPListener模块来使用 1.在自己服务器上 ...

  4. 详解C3P0(数据库连接池)

    详解C3P0(数据库连接池) 快速索引 一.基本定义 二.使用C3P0(数据库连接池)的必要性 1.JDBC传统模式开发存在的主要问题 三.数据库连接池的详细说明 四.使用连接池的明显优势 1.资源的 ...

  5. Tars | 第2篇 TarsJava SpingBoot启动与负载均衡源码初探

    目录 前言 1. Tars客户端启动 @EnableTarsServer 2. Communicator通信器 3. 客户端的负载均衡调用器LoadBalance 最后 前言 通过源码分析可以得出这样 ...

  6. 一文彻底搞懂Hive的数据存储与压缩

    目录 行存储与列存储 行存储的特点 列存储的特点 常见的数据格式 TextFile SequenceFile RCfile ORCfile 格式 数据访问 Parquet 测试 准备测试数据 存储空间 ...

  7. CVPR顶会论文爬取存入MySQL数据库(标题、摘要、作者、PDF链接和原地址)

    main.py import pymysql import re import requests # 连接数据库函数 from bs4 import BeautifulSoup def insertC ...

  8. python函数模块

    python函数模块 学习完本篇,你将会深入掌握 函数相关知识 1.函数定义 2.函数如何调用 3.递归函数以及匿名函数使用 模块相关知识 1.模块如何导入调用 2.函数调用顺序 函数定义 函数代码块 ...

  9. Dubbo 学习(二)服务注册与发现

    在上一篇中我们提到,dubbo官网上推荐使用ZooKeeper作为注册中心.那么今天我们就通过代码来实践一番,看看一个dubbo的服务消费者如果找到通过ZooKeeper暴露自己的dubbo服务提供者 ...

  10. 如何理解 jmeter 的线程数与并发数之间的关系

    https://blog.csdn.net/weixin_39955351/article/details/110548162 多个线程组的并发是如何计算的?