Vue-cli、Webpack、NodeJs、NPM、Eleme...手把手教你搭前端

参考文章: 手把手教你搭前端

如何开始

在开始搭建前端框架之前,大致会用到如下工具包:

VUE
Webpack
Vue-cli
NodeJs
NPM
ElementUI
Node-Sass
Axios


Vue 是什么?

下图是官网 给的解释

image.png

是一套渐进式的JavaScript的框架,可能有同学可能不太理解什么是渐进式

比如你事先有一个现成的服务端应用,那么你就可以使用VUE将其作为该应用的一部分嵌入到其中;

事实上也是根据自己所需只用所需的部分即可,并不需要考虑其他不需要的部分

再直白点理解就是:

你不需要完全掌握VUE的所有功能特性就能开始使用,在使用的过程要再有其他需求可根据其需求再慢慢增加

因为不需要上来就关注全局,这可能是很多人选择它并易于上手一个重要原因。


Webpack 是什么?

再说它之前,

我们首先要知道我们要搭建的前端项目是干什么的?

要说明前端框架是干嘛的?

就得先知道前端项目包含些什么?

当然常见得无非就是各种静态资源文件,

例如:

  • 脚本(js)文件;
  • 样式(css)文件
  • 图片(png\jpg…)文件
  • 其他媒体(MP3、MP4…)文件等等...

我们搭建前端项目的最基础的一个职责就是对这些静态资源的管理;

例如对静态资源的构建和打包,因此资源打包工具是其中很重要的一环。

目前在业界首屈一指打包工具非Webpack莫属啦;

官网的解释

image.png

它有以下几个关键特性:

  • 可创建单个或多个按需加载的块,以减少初始加载时间
  • 在编译期间会解决依赖关系,减少了运行时的大小
  • 加载器可以在编译时预处理文件

Vue-cli是什么?

上文提到打包工具,我们选择了在界面具有老大地位的Webpack

随着使用Webpack的人越来越多, 针对Webpack的各种插件如百家争鸣般越来越多,

如果我们自己准备从0开始配置Webpack,那往往要琢磨好久好久...

有没有一个工具能帮我们既合理又迅速的整合最佳配置呢?

让我们不需要将大部分时间浪费在配置环节呢?

对,你猜的没错,这就是Vue-cli(脚手架)

先看下官网介绍,如下图:

image.png

有了它我们就不用关心Webpack如何有效配置,只需要专注于业务代码。

开箱即用多方便。


NodeJS是什么?

有的同学看到有js就把它理解成类似jQuery的js框架库,很遗憾你想多啦,这是两码事儿。

还是先来看看官网怎么说?

image.png

可以把NodeJs类比java中的JVM,也就是java的虚拟机,

说的再直白点就是你开发java程序前安装的那个JDK(想了解更多这方面的内容,传送门

java经常鼓吹自己【一次编写,处处运行】依仗的就是JVM这个坚强后盾。

无论是Windows还是Linux操作系统,只要安装了JVM都可以运行.class文件

NodeJs的作用和JVM的作用是一样的;

它是js的运行环境,不管你是什么系统,只要安装了对应版本的NodeJs,你就可以用js来开发后台程序

说到这里可能有同学会想到,一直以来只能运行在浏览器上的js既然可以做后端开发啦,也就意味着擅长Js的前端开发人员摇身一变成了“全栈开发工程师”啦。

回到重点为什么要它?

其实VUE本身不依赖NodeJs,那为什么还要用它?

如果我们单纯的只是使用VUE,当真是不需求使用也不需要安装NodeJs;

如上文所述,因为用了Webpack来构建打包项目,而Webpack又是基于NodeJs开发的,So...

选择NodeJs原因还有很多,这里不做过多说明,有兴趣的官网了解下。


NPM 是什么?

使用NodeJs就离不开NPM,那么npm是什么?

来看下官网的介绍,如下图示:

image.png

简单翻译下

npm号称是世界上最大的软件注册中心,
全球(来自各大洲)开源软件开发者们利用它来相互借鉴相互共享…

你也可以理解NPM是javascript包的服务中心,我们用它作为工具来对NodeJs包进行管理;

有了它就可以将webpack、Vue-cli等上文刚刚提到过的或未说到而后续会使用到的工具包下载安装本地,来提供后续的使用

npm提供了非常有用的解决方案,支持大量的测试用例

除【npm】外,业界目前主流的其他NodeJs包管理工具有以下几个:

常用分别有【yarn】、【cnpm】以及【pnpm】等

cnpm

是淘宝做的npm镜像,cnpmnpm用法完全一致,只是在执行命令时将npm改为cnpm

主要是因为npm插件的安装是要从国外服务器下载,受网络影响大,有很大可能出现异常,要是npm的服务器在中国就不一样啦,于是淘宝团队干了这事儿;

引用淘宝官网介绍如下:

这是一个完整 npmjs.org 镜像,
你可以用此代替官方版本(只读),
同步频率目前为 10分钟 一次
以保证尽量与官方服务同步。

yarn

一开始的主要目标是:

解决上一节中描述的由于语义版本控制而导致的npm安装的不确定性问题,

像npm一样,yarn使用本地缓存。

与npm不同的是,yarn无需互联网连接就能安装本地缓存的依赖项,运行速度得到了显著的提升。

pnpm

运行起来非常的快,超过了npm和yarn,

了解更多看作者[Zoltan Kochan]怎么说...

【pnpm】可能是一些测试用例的更好的选择。例如,它可以在运行大量集成测试并希望尽可能快地安装依赖关系的中小型团队中发挥作用.

有兴趣的同学可以自行去了解下,这里不做过多介绍啦。

【yarn】官网

【pnpm】官网


Element 是什么?

Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。

这是官网的介绍,如下图示:

image.png

Node-sass是什么?

在说清楚node-sass是什么之前,我们要先知道sass是个啥?

Sass是一种预处理器脚本语言,可以解释或编译成层叠样式表(CSS)。

那这样就好理解啦,

这是官网的介绍,如下图示:

image.png

大致意思是:

Node-sass是一个库,它将Node.js绑定到libsass,
流行样式表预处理器Sass的C版本。
它允许用户以令人难以置信的速度将.scss文件本地编译为css,
并通过连接中间件自动编译。

Axios是什么?

看下中文网的介绍,如下图示:

image.png

简单的讲:

就是可以发送get、post请求;

不过说到get、post,大家应该第一时间想到的就是Jquery,毕竟前几年Jquery比较火的时候,大家都在用他。

也有人说Axios是对Ajax做了封装;

但是由于Vue、React等框架的出现,Jquery也不是那么吃香了。

也正是Vue、React等框架的出现,促使了Axios轻量级库的出现;

因为Vue等,不需要操作Dom,所以不需要引入Jquery.js了。

我们再说一下Axios用在什么场景?

在特性里面已经有提到;

浏览器发送请求,或者Node.js发送请求都可以用到Axios。

像Vue、React、Node等项目就可以使用Axios;

如果你的项目里面用了Jquery;

此时就不需要多此一举了,jquery里面本身就可以发送请求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341

推荐阅读更多精彩内容