最近正在做一个Vue重构有赞商城的项目,所以这段时间会不定期跟进一些关于这个项目的技术博客。那么,今天就来聊一聊怎么使用NPM安装Vue.js吧!
步骤一:安装node.js
如下图所示,在终端上输入以下命令确认你电脑上已经安装node.js并且npm的版本大于3.0,如果npm版本小于3.0,可以输入$ cnpm install npm -g
进行升级。
步骤二:安装淘宝镜像
由于 npm 安装速度慢,所以本文使用淘宝镜像及其命令 cnpm进行安装,输入
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
安装淘宝镜像。步骤三:安装Vue
输入
$ cnpm install vue
,回车等待终端给出响应。步骤四:安装全局vue-cli脚手架
输入
$ cnpm install --global vue-cli
,安装全局vue-cli脚手架,用于快速搭建大型单页应用。步骤五:检查Vue是否安装成功
输入
$ vue -V
检查是否安装成功,如果返回版本号则说明安装成功。出现了版本号说明安装成功
步骤六:查看官网提供的模板(这个步骤可以省略)
查看vue官方提供的模板 六个模板中我们主要使用webpack模板,原因如下:
WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将其打包为合适的格式以供浏览器使用。
步骤七:创建一个基于 webpack 模板的新项目
终端切换到你的目标目录下创建一个项目,这里以在桌面创建一个叫做vue-project的项目为例:输入vue init webpack vue-project
,终端会给你返回如下内容:
# 这里需要进行一些配置,默认回车即可
This will install Vue 2.x version of the template.
For Vue 1.x use: vue init webpack#1.0 vue-project
? Project name vue-project
? Project description A Vue.js project
? Author 5Iris5 <1847370****@163.com>
? Vue build standalone
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Setup unit tests with Karma + Mocha? Yes
? Setup e2e tests with Nightwatch? Yes
vue-cli · Generated "my-project".
To get started:
cd vue-project
npm install
npm run dev
Documentation can be found at https://vuejs-templates.github.io/webpack
这里没有放原图是因为,我在这个环节出错了,原因后面会详细记录。正常情况下,运行到这个步骤后,你的界面应该依次出现如上所示的三条命令。
步骤八:根据提示依次输入以下三条命令
// 进入项目
$ cd vue-project
// 安装依赖
$ cnpm install
// 测试环境是否搭建成功
$ cnpm run dev
步骤九:运行
成功执行以上命令后访问 http://localhost:8080/,输出结果如下所示:
安装过程中遇到的问题
我在输入
vue init webpack vue-project
这行命令并进行完一系列配置后,终端给我返回了如下内容:仔细终端给出的提示信息,并不是npm版本的问题。但是接下来终端仅提示我输入如下两条命令:
看到了吗?少了一条
npm install
的命令。为什么呢?目前为止还不清楚原因,所以我决定不管我的终端提示,依次输入正常的三条命令,结果终端提示我如下信息:报错辣 现在清楚了吗?注意看我框出来的信息,提示我下载chromedriver,虽然还不太清楚这么做的原因,但我觉得按照它的提示试一下:
下载 chromedriver
下载好后,后续的一系列运行就没有问题了!关于为什么会报错,事后我在网上查阅了一些资料,大概意思是,该问题是vue-cli脚手架上的一个bug,没有安装chromedriver会导致文件目录结构不完整。
补充:
推荐使用cnpm安装chromedriver,因为使用npm安装chromedriver有时会出错,出错的大致原因如下:
1、某些版本下,chromedriver的zip文件url的响应是302跳转,而在install.js里使用的是Node.js内置http对象的get方法,所有无法处理302跳转的情况
2、googleapis.com被墙了,所有即使采用科学上网的方法也仍然无法获取文件。
参考资料:npm 安装 chromedriver 失败的解决办法
网友评论