如何搭建一个完整的Vue3.0+ts的项目步骤


Posted in Javascript onOctober 18, 2020

相信9月18日尤大大的关于Vue3.0的发表演讲大家一定有所关注,现在Vue3.0 也已经进入RC阶段(最终产品的候选版本,如果没有问题则可发布成为正式版本)。所以Vue3.0的学习是我们必然的趋势,今天,主要分享一下Vue3.0的详细搭建过程,希望可以为初入Vue3的小伙伴有所帮助。

我们现在开始进入今天的主题啦~~

一、安装

1. 安装nodejs

此处提供nodejs下载地址: https://nodejs.org/zh-cn/download/

大家根据自己电脑的配置选择适配的 LTS(最新稳定版本 进行下载,安装即可,此处略去安装步骤。

 2.卸载旧版本

如果你现在正在用旧版的 Vue-cli1.x 或者 Vue-cli2.x 需要先进行卸载;如果没有,请忽略此步骤

打开命令窗口,用以下命令进行卸载:

npm uninstall vue-cli -g

3.安装Vue-cli 3.x

搭建Vue3.0的项目,必须依赖 Vue-cli 3.0 或者以上的版本,打开命令窗口,通过以下命令进行安装和查看版本号:

// 安装最新版的vue-cli
npm install -g @vue/cli  
// 查看版本号
vue -V

二、项目搭建过程

1.新建项目,以下我新建一个名称为my-demo的项目

vue create my-demo

2.enter之后,根据项目提示,接下来会让你选择一个预设:

如何搭建一个完整的Vue3.0+ts的项目步骤

  • newTs : 在项目创建完成的最后,会询问你需不需要保持本次配置,方便下次直接使用;这个newTs就是我之前保存好的一个预设配置
  • Default:默认的预设配置,会快速构建一个项目,提供了babel和eslint的支持
  • Manually select features:手动进行项目配置,可以根据项目的需要选择合适的依赖,具备更多的选择性,以下步骤,我将会采用该种方式。

3. Vue-cli3.x 将提供以下特性供选择,大家可以根据项目需要进行选择添加的配置项:

通过上下键进行配置项切换,对需要选择的配置项使用空格键进行选中/反选

如何搭建一个完整的Vue3.0+ts的项目步骤

  • Babel:使用babel,便于将我们源代码进行转码(把es6=>es5)
  • TypeScript:使用TypeScript进行源码编写,使用ts可以编写强类型js,对我们的开发有很大的好处
  • Progressive Web App(PWA):使用渐进式网页应用(PWA)
  • Router:使用vue-router
  • Vuex:使用vuex状态管理器
  • CSS Pre-processors:使用CSS预处理器,比如:less,sass等
  • Linter/Formatter:使用代码风格检查和格式化
  • Unit Testing:使用单元测试
  • E2E Testing:使用E2E测试, end to end(端到端)是黑盒测试的一种

4.然后对每个选中的配置项进行配置

Use class-style component syntax? (Y/n)

是否使用Class(类)风格装饰器, 即通过export default class Home extends Vue{} 创建Vue实例

如何搭建一个完整的Vue3.0+ts的项目步骤 

Use Babel alongside TypeScript (required for modern mode, auto-detected polyfills, transpiling JSX)? (Y/n)

使用Babel做转义, 与TypeScript一起用于自动检测

如何搭建一个完整的Vue3.0+ts的项目步骤 

Use history mode for router?
路由模式, 是否选择history模式,启用history模式,项目build之后,可能会出现打开页面空白的情况哦

如何搭建一个完整的Vue3.0+ts的项目步骤 

Pick a CSS pre-processor?
选择一种css 预处理器, 在这里我选择less

如何搭建一个完整的Vue3.0+ts的项目步骤 

Pick a linter / formatter config?
选择一种代码格式化检测工具

如何搭建一个完整的Vue3.0+ts的项目步骤

TSLint: ts格式检验工具
ESLint with error prevention only: ESLint 只会进行错误提醒
ESLint + Airbnb config: ESLint Airbnb标准
ESLint + Standard config: ESLint Standard 标准
ESLint + Prettier: ESLint(代码质量检测)+ Prettier(代码格式化工具)

Pick additional lint features?
代码检查方式: 保存时检查 or 提交时检查; 我选择, 保存时检查

如何搭建一个完整的Vue3.0+ts的项目步骤 

Pick a unit testing solution?
选择一种单元测试的方案,目前Vue官方推荐也是jest, 相比而言, 配置简单容易上手, 建议选择Jest啦

如何搭建一个完整的Vue3.0+ts的项目步骤 

Where do you prefer placing config for Babel, PostCSS, ESLint, etc.?
Babel, PostCSS, ESLin等配置文件怎么存放, 是放到单独的配置文件中?还是package.json里? 这里方便配置清晰好看, 我选择每个配置单独文件。

如何搭建一个完整的Vue3.0+ts的项目步骤 

Save this as a preset for future projects?
是否需要保存当前配置,在以后的项目中可快速构建? 保存后, 后续创建项目时可以直接选择该配置, 不需单独配置

如何搭建一个完整的Vue3.0+ts的项目步骤 

5.配置完成后,等待依赖安装完成

如何搭建一个完整的Vue3.0+ts的项目步骤如何搭建一个完整的Vue3.0+ts的项目步骤

6.构建完成后,项目目录结构如下

如何搭建一个完整的Vue3.0+ts的项目步骤 

相比Vue2.x, Vue3.0的目录确实精简了很多, 而且我们会发现, Vue3.0不在有webpack.config.js的配置, 是因为Vue3.0 通过插件@vue/cli-service对webpack进行抽象处理, 并默认了webpack的配置。但是项目开发中,我们肯定会存在一些特殊的需求需要调整webpack, 当然这也是没有问题, 在Vue3.0当中, 可以通过在项目的根目录创建vue.config.js对webpack进行自定义配置。

关于vue.config.js 的配置我会单独写一篇文章进行分享

三、启动项目:

cd my-demo
npm run serve

如何搭建一个完整的Vue3.0+ts的项目步骤

至此,Vue3.0完整的项目搭建过程就完成,后面我会单独分享Vue3.0中vue.config.js 的配置; 文章中有错误的地方,欢迎提出指正,感谢大家,更多相关Vue3.0+ts项目步骤内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
Dec 07 Javascript
在服务端(Page.Write)调用自定义的JS方法详解
Aug 09 Javascript
JavaScript 学习笔记之语句
Jan 14 Javascript
JavaScript使用Prototype实现面向对象的方法
Apr 14 Javascript
JavaScript中Math.SQRT2属性的使用详解
Jun 14 Javascript
JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题如何解决
Nov 11 Javascript
JS+HTML5 FileReader对象用法示例
Apr 07 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
Apr 18 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
May 28 Javascript
如何使用electron-builder及electron-updater给项目配置自动更新
Dec 24 Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
Mar 19 jQuery
javascript实现扫雷简易版
Aug 18 Javascript
详解如何在Javascript中使用Object.freeze()
Oct 18 #Javascript
从表单校验看JavaScript策略模式的使用详解
Oct 17 #Javascript
关于IDEA中的.VUE文件报错 Export declarations are not supported by current JavaScript version
Oct 17 #Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
Oct 16 #Javascript
DWR内存兼容及无法调用问题解决方案
Oct 16 #Javascript
JS pushlet XMLAdapter适配器用法案例解析
Oct 16 #Javascript
jQuery zTree如何改变指定节点文本样式
Oct 16 #jQuery
You might like
隐性调用php程序的方法
2009/03/09 PHP
PHP Zip解压 文件在线解压缩的函数代码
2010/05/26 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
php使用ICQ网关发送手机短信
2013/10/30 PHP
php网站判断用户是否是手机访问的方法
2013/11/01 PHP
推荐一些非常不错的javascript学习资源站点
2007/08/29 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
如何在一个页面显示多个百度地图
2013/04/07 Javascript
Jquery Uploadify多文件上传带进度条且传递自己的参数
2013/08/28 Javascript
jquery表单验证插件formValidator使用方法
2016/04/01 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
jQuery Ajax async=>false异步改为同步时,解决导致浏览器假死的问题
2019/07/22 jQuery
vue页面加载时的进度条功能(实例代码)
2020/01/13 Javascript
echarts.js 动态生成多个图表 使用vue封装组件操作
2020/07/19 Javascript
Python中使用动态变量名的方法
2014/05/06 Python
Python入门篇之对象类型
2014/10/17 Python
Python中文件操作简明介绍
2015/04/13 Python
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
2016/06/03 Python
python抓取文件夹的所有文件
2018/02/27 Python
在PyCharm中控制台输出日志分层级分颜色显示的方法
2019/07/11 Python
对pytorch的函数中的group参数的作用介绍
2020/02/18 Python
python3 自动打印出最新版本执行的mysql2redis实例
2020/04/09 Python
jupyter notebook 调用环境中的Keras或者pytorch教程
2020/04/14 Python
基于CSS3实现的黑色个性导航菜单效果
2015/09/14 HTML / CSS
html5 canvas移动浏览器上实现图片压缩上传
2016/03/11 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
购买中国最好的电子产品:Geekbuying
2018/03/13 全球购物
用C#语言写出与SQLSERVER访问时的具体过程
2013/04/16 面试题
无故旷工检讨书
2014/01/26 职场文书
旅游安全协议书
2014/04/21 职场文书
仓库规划计划书
2014/04/28 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
二年级学生期末评语
2014/12/26 职场文书
关于拾金不昧的感谢信
2015/01/21 职场文书
Pytorch实现图像识别之数字识别(附详细注释)
2021/05/11 Python