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 相关文章推荐
javascript面向对象之二 命名空间
Feb 08 Javascript
jQuery中ajax的使用与缓存问题的解决方法
Dec 19 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
May 11 Javascript
JQuery Tips相关(1)----关于$.Ready()
Aug 14 Javascript
一句jQuery代码实现返回顶部效果(简单实用)
Dec 28 Javascript
详解Angular2表单-模板驱动的表单(Template-Driven Forms)
Aug 04 Javascript
原生js实现Flappy Bird小游戏
Dec 24 Javascript
Node.JS用纯JavaScript生成图片或滑块式验证码功能
Sep 12 Javascript
基于PHP pthreads实现多线程代码实例
Jun 24 Javascript
swiperjs实现导航与tab页的联动
Dec 13 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
Jan 27 Vue.js
JS实现刷新网页后之前浏览位置保持不变示例详解
Aug 14 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
国外PHP程序员的13个好习惯小结
2012/02/20 PHP
apache php模块整合操作指南
2012/11/16 PHP
Zend Framework自定义Helper类相关注意事项总结
2016/03/14 PHP
php删除数组指定元素实现代码
2017/05/03 PHP
PHP的RSA加密解密方法以及开发接口使用
2018/02/11 PHP
用js获取电脑信息(是使用与IE浏览器)
2013/01/15 Javascript
JQuery 获取json数据$.getJSON方法的实例代码
2013/08/02 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
删除javascript所创建子节点的方法
2015/05/21 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
以Python代码实例展示kNN算法的实际运用
2015/10/26 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
jquery点击展示与隐藏更多内容
2016/12/03 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
捕获未处理的Promise错误方法
2017/10/13 Javascript
微信小程序tabBar用法实例详解
2017/12/04 Javascript
jquery.picsign图片标注组件实例详解
2018/02/02 jQuery
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
原生JS+HTML5实现的可调节写字板功能示例
2018/08/30 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
[02:26]DOTA2英雄米拉娜基础教程
2013/11/25 DOTA
[01:53]3.19 DOTA2发布会 现场精彩Coser表演
2014/03/25 DOTA
详解字典树Trie结构及其Python代码实现
2016/06/03 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
对python多线程与global变量详解
2018/11/09 Python
python logging模块的使用总结
2019/07/09 Python
Python使用qrcode二维码库生成二维码方法详解
2020/02/17 Python
keras中的History对象用法
2020/06/19 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
详解Python IO编程
2020/07/24 Python
荷兰度假屋租赁网站:Aan Zee
2020/02/28 全球购物
努力工作保证书
2015/02/28 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
鲁滨逊漂流记读书笔记
2015/06/26 职场文书
学习经验交流会演讲稿
2015/11/02 职场文书