学习的项目搭建流程
1.项目搭建+使用element实现首页布局
2.顶部导航菜单及与左侧导航联动的面包屑实现
3.封装一个ECharts组件
4.封装一个Form表单组件和Table表格组件
5.企业开发之权限管理思路讲解
项目搭建之前,我们先了解一下Yarn是什么?
“Yarn是由Facebook、Google、Exponent和Tilde联合推出了一个新的JS包管理工具,正如官方文档中写的,Yarn是为了弥补npm的一些缺陷而出现的。“
npm install 的时候巨慢。新项目要拉半天,删除node_modules,重新install还是慢
同一个项目,安装的时候无法保持一致性。由于package.json文件中版本号的特点,下面三个版本号在安装的时候代表不同的含义。
比如”5.0.3“表示安装指定的5.0.3版本,”~5.0.3"表示安装5.0.X中最新的版本,“^5.0.3”表示安装5.X.X中最新的版本。这会导致,版本不一致出现bug.
安装的时候,包会在同一时间下载和安装,中途包报错,但是npm会继续下载和安装包。因为npm会把所有的日志输出到终端,有关错误包的错误信息就会在一大堆npm打印的警告中丢失掉,并且你甚至永远不会注意到实际发生的错误。
Yarn的优点?
速度快。
原因,
1.并行安装:npm按照队列执行每个package,Yarn是同步执行所有任务。
2.离线模式:如果之前已经安装过一个软件包,用Yarn再次安装时之间从缓存中换取,就不用像npm那样再从网络下载了。
安装版本统一
为了防止拉取到不同的版本,Yarn 有一个锁定(lock file)记录了被确切安装上的模块的版本号。
每次只要新增一个模块,Yarn就会创建(或更新)yarn.lock这个文件。npm也有处理相同版本的packages,但需要开发者执行npm shrinkwrap命令。这个命令将会生成一个锁定文件,在执行npm install的时候,该锁定文件会先被读取。npm和Yarn不同,Yarn是默认生成锁定文件。npm是手动执行命令。
更简洁的输出
npm的输出信息比较冗长。命令行里不断打印所有安装上的依赖。Yarn结合emoji直观且直接地打印出必要的信息,也提供了一些命令供开发者查询额外的安装信息。
**多注册来源处理
**所有的依赖包,不管他被不同的库间接关联引用多少次,安装这个包时,只会从一个注册来源去装,要么是npm要么是bower,防止出现混乱不一致。
更好的语义化
yarn改变了一些npm命令的名称。比如 yarn add/remove,感觉上比npm原本的install/uninstall要更清晰。
Yarn和npm命令对比
npm yarn
npm install yarn
npm install react --save yarn add react
npm uninstall react --save yarn remove react
npm install react --save-dev yarn add react --dev
npm update --save yarn upgrade