前端实战项目:前端框架Vue3.0项目教程(一)Vue3.0环境的搭建
前端实战项目
——前端框架Vue3.0项目教程(一)Vue3.0环境的搭建
Vue是第三方开发的基于MVVM设计模式的渐进式纯前端js框架,是一个构建数据驱动的 web 界面的库。在很多公司的前端框架使用中,Vue做为一门技术流行开来,具备了虚拟DOM树,面向组件的开发模式和观察者模式等优点。
现在,Vue也进入了3.0的时代。
一、Vue3.0的特点
vue最主要的特点就是响应式机制、模板、以及对象式的组件声明语法,而3.0对这三部分都做了更改。
1、 响应式
响应式是基于Object.defineProperty实现的代理,兼容主流浏览器和ie9以上的ie浏览器,可以做到监听对象属性的增删和数组元素和长度的修改,还可以监听Map、Set、WeakSet、WeakMap,同时还实现了惰性的监听,不会在初始化的时候创建所有的Observer,而是会在用到的时候才去监听。
vue3.0做了实现机制的变更,采用ES2015的Proxy,不但解决了vue2.x中的问题,还是得性能有了进一步提升。虽然有一些兼容问题,但是通过适配的方式解决掉了。此外,还暴露了observable的api来创建响应式对象,可以替代掉event bus,来做一些跨组件的通信。
2、模板
模板方面没有大的变更,只改了作用域插槽,2.x的机制导致作用域插槽变了,父组件会重新渲染,而3.0把作用于插槽改成了函数的方式,这样只会影响子组件的重新渲染,提升了渲染的性能。
3、对象式的组件声明方式
vue2.x中的组件是通过声明的方式传入一系列option,和TypeScript的结合需要通过一些装饰器的方式来做,虽然能实现功能,但是比较麻烦。
3.0修改了组件的声明方式,改成了类式的写法,这样使得和TypeScript的结合变得很容易。
二、Vue3.0脚手架的安装
Vue3.0的环境首先需要安装node.js,可以通过node.js的官方网站中下载node.js。
下载网址:https://nodejs.org/zh-cn/download/
下载界面如下图所示。
安装后可以在cmd命令窗口中输出node的版本号,命令如下:
node –v
输入命令后的截图如下所示。
图中因为系统是windows7,所以版本方面采用12.16.3,现在很多node的最新版本支持windows8.0版本。
接下来安装vue-cli脚手架帮助我们建立vue项目,安装最新班的vue-cli脚手架命令如下。
npm install -g @vue/cli
三、使用 Vue3.0脚手架创建 Vue项目。
在公司开发具体项目时,需要在github上创建一个仓库更好地去管理代码。
接下来,在github上创建一个仓库myvue3demo,然后使用git的命令行格式下载myvue3demo3同步到本地。命令如下:
git clone git@github.com:wawacode/myvue3demo.git
上面引用的github地址为本人的github地址。
使用git clone时可能会发生如下错误:
出现错误原因没有publickey,在客户端启动git工具的git bash,出现git bash窗口。如下图所示。
在git bash窗口中输入ls ~/.ssh/看一下是否有内容,如果没有内容,则创建public key的内容,命令如下。
ssh-keygen -t rsa -b 2048 -C "你自己的邮箱地址"
修改邮箱地址为你自己的邮箱地址,注意此处邮箱地址前后的双引号为英文格式双引号;指令执行后页面提示:
Generating public/private rsa key pair.Enter file in which to save the key (/c/Users/***/.ssh/id_rsa):
***表示你自己的当前登录用户名,不做修改直接回车,会将生成的rsa文件保存为默认名称
再次回车提示:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
这里可以不设置密码,直接再回车提示
Your identification has been saved in....
即表示ssh key生成成功;
成功生成ssh key后将ssh key输入到git创建的仓库中,如下图。
图中已设置成功ssh-key。设置成功后可以通过cat ~/.ssh/查看刚刚命令产生的ssh key。如下图。
cat命令显示的内容就是public key,如果有public key就可以git clone后产生同名文件夹。如下图。
接下来使用脚手架初始化项目,vue-cli是vue的脚手架工具,帮助我们初始化代码的框架,同时添加一个依赖,例如运行时人依赖,如vue.js,vue-router等,还有开发者依赖,如webpack等。Vue脚手架工具的安装。
vue create myvue3demo
这里vue创建的myvuedemo3项目与github上的同名。
执行命令后,出现界面如下。
选项中的第一句overwrite是覆写同名文件夹的意思,Merge是合并的意思,Cancel意思是取消。Cli脚手架会为我们创建一些文件,创建后是覆写还是合并就由这个选项来决定。如果要保留创建项目时保留的文件,就选择第二项合并。这里选择Merge合并。回车后出现的界面如下。
图中提供了vue2和vue3的默认设置,第一项Default([vue2],babel,eslint)默认vue2的设置,第二项Default([vue3],babel,eslint)默认vue3的设置,第三项表示Manually select features自定义选项设置,这里选择第三项自定义选项。出现界面如下。
界面中Choose Vue version是需要的,默认为星号表示被选择。Babel是需要的,默认为星号表示被选择,TypeScript这里涉及率不高,如果写一些库的时候是需要的。PWA使Web app有沉浸式体验这里也不需要。Router路由是需要的,可以使用键盘的空格来选择。Vuex表示Vue的状态管理器也是需要的,有利于管理复杂的项目,可以使用键盘的空格来选择,接下来的Linter/Formatter也是需要的,以便于ESLinter的代码规范,最后的两个Testing测试不需要选择。最终选择的界面如下图所示。
图中对选项设置后,就可以根据自定义的一步一步进行选择,首先会问你vue的版本。这里是3.0的版本,如下图所示。
回车后,接下来选择router的方式,是history的方式还是hash的方式,两种方式最直观的区别就是在url中 hash 带了一个很丑的 # 而history是没有#的。地址栏如http://www.abc.com/#/hello表示为hash模式,这里用hash模式,输入”n”,如下图所示。
回车后,接下来选择的是CSS的预处理器,有SACS,LESS和Stylus,根据使用css预处理器的习惯选择即可。
回车后,接下来代码的ESLinter,这里选择标准即可。如下图所示。
回车后,表示什么时候使用ESLint,这里选择保存时即可,也就是默认。如下图所示。
回车后,接下来的选项是配置在配置文件中,还是在package.json文件中。这里选择在配置文件中,如下图所示。
回车后,出现询问前面的配置是否保存,保存后在vue create创建vue项目时可以出现曾经保存的设置。这里做一个保存,以便后面使用。输入y,如下图所示。
上图中要求输入保存配置的名称,可以输入自定义的名字,回车后进行项目的创建过程,如下图所示。
Vue 3.0的项目就通过创建过程自动创建中。
项目安装运行结束后,出现界面如下图所示。
项目创建后,可以通过cd命令进行项目文件夹,再运行npm run serve来运行项目。如下图所示。
运行结束后,界面如下图所示。
这里通过界面可以看到相关提示。
本地可以通过http://localhost:8080/来访问项目地址.
网络可以通过http://192.168.1.107:8080/来访问项目地址。
在本地浏览器地址栏中输入http://localhost:8080/,输入后界面如下图所示。
由图可以看出,Vue3.0的项目已创建完毕。
四、Vue3.0脚手架创建项目的文件解释
脚手架最终产生的项目文件夹如图所示。
1、项目文件夹中的package.json很重要,当中的几个重要项目有Scripts,Dependencies,devDependencies。如下图所示。
(1)图中1标注的scripts中的内容意义在于:
当执行npm run serve,将会执行vue-cli-service.serve的命令,通过内置的服务来开启本地命令。
(2)图中2标注的dependencies当中是运行时依赖,也就是说当浏览器打开时会自动寻找Dependencies中的js。
(3)图中3标注的devDepenceis中表示的是开发时依赖,为了实现开发需要依赖于vue中的一些插件工具,最终不会在运行时打包。
也就是运行时需要的内容安装在Dependencies,开发时需要的内容安装在devDependencies中。
2、文件夹中的.browserslistrc表示浏览器兼容性的配置文件。
3、文件夹中的.editorconfig表示编辑器的配置文件,比如:
Indent_style=space表示缩进方式为空格,indent_size=2表示空格的长度为2等。
4、文件夹中的.eslintrc.js表示eslint的配置文件,如文件中extends后面的”@vue/standard”就是配置中的标准方式,“plugin:vue/vue3-essential”对模板编写使用一些lint等等。
5、文件夹中.gitignore文件表示文件中的内容是不会上传到github中的,比如node_modules中安装一堆的node模块,是不能上传到git中的。
6、文件夹中babel.config.js文件表示babel的一些配置,原有的内容是一些预设的内容。
7、文件夹中package-lock.json文件实现对npm管理中的版本的一个锁。如果初始化之后除非手动去升级这些版本,不然就不会去安装最新版本。
8、在文件夹下的node_modules中存储所有项目需要的插件。
9、在文件夹下的public中index.html就是项目的入口文件,当启动npm run serve时,就会在scripts中启动一个服务,这个服务就访问了这个index的文件,文件中有<%=htmlWebpackplugin.options.title%>实现在编译过程中的一部分工作。
10、在src下的main.js文件实现的index文件渲染页面的js文件。在main.js中通过createApp方法生成一个app实例,同时use是vue3使用的实例,默认使用store和router的实例,最后通过mount挂载在id为#app的div中渲染出来。
11、在src下的App.vue文件中通过router-link进行路由后面的内容,router-link的具体to参数地址可以在src文件夹中的router文件夹中的index.js中看到具体的路由规则。路由中指定path路径和component组件,在components目录中初始化有Hello.vue和About.vue两个vue组件。注意,在components有一个箭头函数的导入,如
Component:()=>import(“./views/About.vue”)表示的是异步加载的组件。
组件通过router路由的规则后就可以通过router-link来进行路由,路由后在访问时就会成为a标签。
12、Src目录中assets目录下的logo.png,就是访问vue3.0项目时的显示在界面中的logo标志。
前端实战项目:前端框架Vue3.0项目教程(一)Vue3.0环境的搭建相关推荐
- wap2.0有关windows mobile模拟器测试环境的搭建
wap2.0有关windows mobile模拟器测试环境的搭建 2009年08月01日 星期六 19:38 理论上测试只需要支持wap2.0的模拟器即可,但是各款模拟器不尽相同,起初我用openwa ...
- 绿豆pro前端APP源码v5.1.7编译教程,后端配置全开源安装搭建全图文操作萝卜白菜app通用说明带视频教程_多啦咪
绿豆pro前端APP源码v5.1.7编译教程全图文操作萝卜白菜app通用: 图文一: 打开前端加载项目后,选择图下文件名为app.java文件打开操作修改位置如下: public static Str ...
- php怎么安装ecshop,ECSHOP4.0安装教程【ECSHOP4.0安装流程方法】ECSHOP4.0安装步骤-ECSHOP教程网...
ECSHOP教程网更新了最新ecshop4.0安装教程,为菜鸟提供详细图文ecshop4.0安装步骤,一步步教会大家如何ecshop4.0安装方法以及安装流程,让大家都会ecshop4.0安装. 大家 ...
- appserv mysql 密码_AppServ8.0安装教程,AppServ8.0安装后Mysql密码不对怎么办?
4.默认全部选中的,直接点击下一步. 注如果想装逼,那第4个可以不安装: 1.Apache HTTP service PHP运行环境(必选项) 2.MYSQL database MYSQL数据库(必选 ...
- 前端实战|React18极客园——项目打包与优化
欢迎来到我的博客
- retrofit 2.0 android 教程,初识Retrofit2.0
Retrofit无疑是当下最流行的Android网络请求框架了,是Square提供的开源产品.官方网站是这样介绍Retrofit的--A type-safe HTTP client for Andro ...
- 【环境搭建】机械革命 1650 Ti + Win10 + CUDA 8.0安装教程 CUDA 8.0网盘链接
用记忆拥抱着过去,用期望拥抱着未来. 文章目录 前言 一.已有条件 二.CUDA安装 1.下载渠道 2.安装过程 3.添加环境变量 3.测试 总结 前言 过年期间新买了一台"机械革命 Z3 ...
- Zabbix4.0 for PostgreSQL (上篇):基础环境的搭建部署
概述 Zabbix大家都很熟悉,一般的是使用MySQL作为存储库来使用的,而我看使用手册上是使用postgresql也是可以的,所以就做了一次基于pg的zabbix搭建测试,记录下来,分享给大家 Se ...
- MySQL8.0安装教程,在Linux环境安装MySQL8.0教程,最新教程 超详细
在Linux系统安装MySQL8.0,网上已经有很多的教程了,到自己安装的时候却发现各种各样的问题,现在把安装过程和遇到的问题都记录下来. 需要说明的一点是我使用的是SSH secure shell ...
- 5.1 上网本安装安卓x86_X86笔记本安装Android 4.0全教程 安卓4.0开发环境搭建
Android 4.0让手机和平板电脑最终走到了一起,这是多么唯美的一件事,其实不仅仅有手机和平板,甚至连PC也与他们同路.日前Android for x86放出了最新的Android 4.0版,这也 ...
最新文章
- labVIEW与单片机实现串口通信的设计过程
- Interface Builder 和UIController的联系
- Android 人脸识别
- Timestamp、String、Date之间的转换
- 算法系列之五 希尔排序
- java - 百钱百鸡小算法
- Hive简单实际操作(二)
- python 堆栈溢出_IAR堆栈溢出的问题
- 使用HBuilderX将H5网页打包成APP
- 最优化学习 约束优化问题
- 温州大学计算机学硕考研难度,2020年温州大学计算机科学与技术考研经验分享...
- 外文论文查重怎么查?
- 遇到unhandled exception:怎么处理?
- python简单代码画皮卡丘-用python画一只可爱的皮卡丘
- Exception when searching pbo at initiating workflow manually: The operation: search failed.
- 【kaggle】印度语和泰米尔语问答赛题baseline
- 查看Oracle数据库版本号
- Android 控件GridView之仿支付宝钱包首页带有分割线的GridView九宫格的完美实现
- 不用找了,50个备课网站一网打尽
- 小超模滕文泽 受邀担任第七届少儿模特明星盛典代言人
热门文章
- 适合android平板的浏览器,推荐5款安卓平板Pad版应用浏览器
- cuda 镜像_AMDamp;Intel双平台黑苹果镜像安装包Catalina 10.15.0(19A583)加强版
- C语言程序设计(谭浩强第五版)——例题
- matlab altera视频,Altera 官网中文视频教程 下载地址
- 软件评测师备考经验分享
- 网易云音乐推荐中的用户行为序列深度建模
- 2021第四届浙江省大学生网络与信息安全竞赛预赛部分Writeup
- 针对吞吐量优化的架构
- 用android编写使用按钮ImageButton和切换器ImageSwitcher
- 极品五笔自定义字库(jpwb.emb)