vue+node+webpack环境搭建教程


Posted in Javascript onNovember 05, 2017

一、环境搭建

1.1、去官网安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html )

注意node的版本,只有支持和谐模式的node才会支持es6,在基于webpack构建项目名称时才不会报错。推荐最新版本.

下载安装包之后直接点击安装即可。测试安装成功的界面如下:

vue+node+webpack环境搭建教程

1.2、利用npm安装webpack命令行语句为npm install webpack -g。测试安装成功的界面如下:

vue+node+webpack环境搭建教程

1.3、下面就是安装淘宝镜像,如下图:

vue+node+webpack环境搭建教程

1.4、接下来就是全局安装vue-cli。需要注意的是使用npm安装vue-cli的时候时间很久,可能会超过两个小时

安装语句为:npminstall--globalvue-cli

1.5、创建一个基于webpack模板的新项目

命令行语句为vue init webpack my-project(其中my-project为文件名称,并且文件名只能是小写字母)。在创建模板新项目的时候需要进入到指定的文件夹下面去。

在cmd里输入vue init webpack my-project (项目文件夹名),回车后,等待一小会儿,依次出现‘git'下的项,可按下图操作

vue+node+webpack环境搭建教程

命令执行完成后可以看到在my-project的文件夹下面多了如下的内容:

vue+node+webpack环境搭建教程

在创建新项目时,如果报以下错误,则说明node版本过低,不支持和谐模式(大概就是说支持es6,f否则不支持,具体还需大神指教),应换成高版本的node。错误如下图所示:

vue+node+webpack环境搭建教程

5.安装依赖

在cmd里 1).输入:cd my-project(项目名),回车,进入到具体项目文件夹

2).输入:cnpm install,回车,等待一小会儿

该命令执行后可能会出现以下错误,解决方案如下图:

vue+node+webpack环境搭建教程

回到项目文件夹,会发现项目结构里,多了一个node_modules文件夹(该文件里的内容就是之前安装的依赖)

基于脚手架创建的默认项目结构如下图所示:

vue+node+webpack环境搭建教程

6.webstorm安装,项目的引入

去官网下载webstrom安装包进行安装。

一直next,根据自己电脑系统,选择安装64位的系统还是32位的,选中js,css,html àjetbrainsà然后就是install安装

在webstorm中file下选择open (选择你的项目文件夹)

看着很简单,我怕过几天我操作出错。

7.测试环境是否搭建成功

方法1:在cmd里输入:cnpm rundev

(显然每次修改代码,每次去cmd输入命令是个很繁琐的过程,所以在webstorm中调出npm菜单。

在package.json文件上点击右键—〉点击show npm scripts 即可调出菜单,以后运行只需在npm菜单里双击dev.

注意在命令行运行项目和dev运行项目不可一起进行,进行一个时需将另一个关闭,否则会报端口已被占用的错误。

方法2:在浏览里输入:localhost:8080(默认端口为8080)

如果输入运行命令后,报错。则有两种情况,如下图所示:

第一种情况:端口占用问题

vue+node+webpack环境搭建教程

解决方案为:

方案1:在进程中关闭该端口。

a.打开cmd,输入命令netstat ?ano 会出现所有的端口号,

b.local address下面是端口号,PID是占用端口号的某程序的进程号(记住进程号)

c.打开任务管理器(ctrl + alt +delete) ,点击进程, 然后点击查看,选择“选择列”,点击确定后就会找出占用了端口进程程序

d.找出记住的进程号,关闭

方案2:在config/index.js文件中,修改端口号。Port:新端口号。

第二种:npm版本过低,需要升级:

vue+node+webpack环境搭建教程

解决方案:

a.输入命令:npm install -g npm

b.复制C:\Users\{你的Windows用户名}\AppData\Roaming\npm\node_modules\npm下的文件到你的 NodeJS安装目录下的 \node_modules\npm 中,覆盖掉原有的全部文件

(或者用比较苯的方法,重新走一遍之前的步骤)

运行起来后的效果如下图所示:

vue+node+webpack环境搭建教程

二、应个人需求会存在的改变

1、vue.js更改默认端口号8080为指定端口:

执行npm run dev实际是在调用根目录下的package.json

打开package.json后可发现有这样一段代码

"scripts":{
"dev":"nodebuild/dev-server.js",
"build":"nodebuild/build.js",
"lint":"eslint--ext.js,.vuesrc"

}

由此可知,我们应该查看build目录下的dev-server.js文件

在dev-server.js文件中可找到

varuri='http://localhost:'+port

此处的port便是我们将要寻找的,在dev-server.js的开始部分我们可以发现

varpath=require('path')

而path又是从哪里来的呢?

根目录下有一个config文件夹,看名字就知道与配置有关,打开config目录下的index.js

dev:{
env:require('./dev.env'),
port:8080,
autoOpenBrowser:true,
assetsSubDirectory:'static',
assetsPublicPath:'/',
proxyTable:{},
cssSourceMap:false

}

这里不仅可以改变端口,还可以根据需要改变其他配置信息。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Knockout数组(observable)使用详解示例
Nov 15 Javascript
js取float型小数点后两位数的方法
Jan 18 Javascript
jquery获取节点名称
Apr 26 Javascript
详解Bootstrap创建表单的三种格式(一)
Jan 04 Javascript
AngularJS 入门教程之HTML DOM实例详解
Jul 28 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
Jan 03 Javascript
AngularJS实现的base64编码与解码功能示例
May 17 Javascript
JS+H5 Canvas实现时钟效果
Jul 20 Javascript
JS防抖和节流实例解析
Sep 24 Javascript
JavaScript中继承原理与用法实例入门
May 09 Javascript
vue axios封装httpjs,接口公用配置拦截操作
Aug 11 Javascript
JS前端监控采集用户行为的N种姿势
Jul 23 Javascript
JavaScript实现三级级联特效
Nov 05 #Javascript
angular中不同的组件间传值与通信的方法
Nov 04 #Javascript
详解使用React全家桶搭建一个后台管理系统
Nov 04 #Javascript
JavaScript中立即执行函数实例详解
Nov 04 #Javascript
Vue全家桶实践项目总结(推荐)
Nov 04 #Javascript
浅谈Vuex的状态管理(全家桶)
Nov 04 #Javascript
简述Angular 5 快速入门
Nov 04 #Javascript
You might like
风格模板初级不完全修改教程
2006/10/09 PHP
PHP OPCode缓存 APC详细介绍
2010/10/12 PHP
php强制运行广告的方法
2014/12/01 PHP
php基于curl扩展制作跨平台的restfule 接口
2015/05/11 PHP
php自动载入类用法实例分析
2016/06/24 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
PhpStorm本地断点调试的方法步骤
2018/05/21 PHP
Javascript 加载和执行-性能提高篇
2012/12/28 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
详解JS函数重载
2014/12/04 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
js设置document.domain实现跨域的注意点分析
2015/05/21 Javascript
jquery中live()方法和bind()方法区别分析
2016/06/23 Javascript
artDialog+plupload实现多文件上传
2016/07/19 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
2016/10/27 Javascript
nodejs mysql 实现分页的方法
2017/06/06 NodeJs
Ionic3 UI组件之autocomplete详解
2017/06/08 Javascript
vue深入解析之render function code详解
2017/07/18 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
JS使用正则表达式找出最长连续子串长度
2017/10/26 Javascript
vue 实现类似淘宝星级评分的示例
2018/03/01 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
微信小程序入门之绘制时钟
2020/10/22 Javascript
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Ubuntu18.04下python版本完美切换的解决方法
2019/06/14 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
解决Python图形界面中设置尺寸的问题
2020/03/05 Python
html通过canvas转成base64的方法
2019/07/18 HTML / CSS
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
渡河少年教学反思
2014/02/12 职场文书
导游词之镇江西津古渡
2019/11/06 职场文书
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server