写这篇博客的目的是让广大的学者在初入Vue项目的时候少走些弯路,虽然现在有很多博客也有差不多的内容,但是博主在里面添加了一些学习时碰到的小问题。在阅读这篇博客之前,我先给大家推荐一篇文章《入门Webpack,看这篇就够了》(网址:http://www.jianshu.com/p/42e11515c10f),看完这篇文章,相信大家对于webpack包管理工具会有一个新的认识。

一、cnpm的安装

npm是node的包管理工具,由于npm是基于国外的服务器,所以有些电脑运行起来比较慢,在这里我们选择使用淘宝的npm镜像cnpm。
用管理员身份打开cmd(之所以用管理员身份,是防止有些电脑的安装需要管理者身份),输入一下命令行
npm install -g cnpm --registry=https://registry.npm.taobao.org

安装完成之后,在命令行输入

cnpm -v

查看cnpm的版本号,如果出现版本号如4.2.0,则表示安装成功!

二、vue-cli的安装

vue-cli是Vue的脚手架工具,我们在安装它之前,在命令行输入vue,是找不到命令的,会输出command not found:vue(可以试试看)。接下来我们来安装它了

我们先在桌面建立一个文件夹Demo_1,然后在cmd进入目录
cd C:\Users\ASUS\Desktop\Demo_1

然后再输入

cnpm install -g vue-cli
-g表示全局安装,去掉-g表示在当前目录下安装。安装完之后,输入vue就会出现类似如下效果

这表示安装成功!

三、创建一个基于“webpack”模板的项目

在命令行输入
vue init webpack myDemo

myDemo是创建出来的文件名,输入上面的命令之后,会出现

它会问你项目名等一些问题,根据你的需要输入,弄完之后我们就来安装项目依赖。(ps:project name不能使用驼峰写法,要换为横杠)

四、安装项目依赖

我们在cmd先进入myDemo目录下
cd C:\Users\ASUS\Desktop\Demo_1\myDemo

在该目录下执行

cnpm install

这句命令行会把所有项目依赖安装到当前目录下,为什么可以直接这么使用呢?
我们来看一下myDemo文件夹里面的package.json文件,里面有一段这样的代码

这两个是我们刚刚下载的webpack模板里面的项目依赖,我们cnpm install命令行的执行,就直接把这些东西都安装了,不用像前面推荐的文章里面一样,每个插件的安装都要执行类似下面的命令
npm install --save-dev json-loader

json-loader这个插件的功能是分析JSON文件并把它转换为JavaScript文件。
好了,回到正题,安装完项目依赖之后。我们会发现在文件夹myDemo里面多了一个node_modules文件夹,里面存放的是插件等的一些东西。

五、打包项目

在打包项目之前,我们再次打开package.json文件,里面有这样一段代码
这段代码,每个键对应着一个值,通俗点的意思就是cnpm run什么键,就执行后面的语句,比如cnpm run build,就是执行node build/dev-server.js文件,对项目进行打包。
在打包之前我们来看一下myDemo目录下的东西
我们在命令行输入
cnpm run build

打包完成之后,是如下效果


我们可以看到打包出来了好多文件,Asset表示这次打包出来的文件,Size是指这个文件的大小,Chunks是指这次打包的分块,Chunk Names是指这次打包的块名称。名称采用的是[name].[hash]的命名方法。(关于webpack的知识我推荐大家去慕课网找《webpack深入与实战》,这个老师讲的非常清楚,这里就不再多说)
接下来我们回去看myDemo文件夹,我们会发现多了一个dist文件夹,打包出来的文件就放在里面。

六、在本地服务器上运行

接下来就是最后一步了,我们通过下面这句代码将这个项目在本地服务器上跑起来。
cnpm run dev


Listening at http://localhost:8080表示监听的端口号为8080(默认为8080)。然后自动打开浏览器我们就可以看到效果啦

七、什么是热更新

热更新这个功能是我们第二步的时候,vue-cli手脚架的一个功能,通俗点讲,它的作用就是当编程人员在修改代码的时候,浏览器不用手动刷新就可以直接看到修改后的效果,大大提高了速度。我们来试验一下。我们找到myDemo/src/component/下的Hello.vue文件,我们修改一点东西,在Welcome to Your Vue.js App之前加上个No。
保存一下,在浏览器不用手动刷新就可以看到效果啦!
 

八、一个问题

其实,不执行第五步的打包项目操作,直接运行项目也是有效果的。cnpm run dev也会进行打包,但是结果是在内存中的,你是看不到的,你运行cnpm run build才能在文件夹中看到,也就是那个dist文件夹,如何证明cnpm run dev打包后的东西是放在内存中呢?我们在浏览器F12
只执行cnpm run dev的情况下,我们会发现index.html中导入了app.js,但是在本地文件夹里面却怎么也找不到这个app.js文件,而执行了cnpm run build之后,app.js就放在dist文件夹中,不推荐只执行cnpm run dev。
《Vue开发环境搭建及热更新》就先说这么多,接下来第二篇《理解最基本的Vue项目》将会讲解一下Vue项目里面的一些代码。

vue开发环境搭建及热更新的更多相关文章

  1. Vuejs开发环境搭建及热更新

    一.安装NPM 1.1最新稳定版本: npm install vue 二.命令行工具安装 国内速度慢,使用淘宝镜像: npm install -g cnpm --registry=https://re ...

  2. express+mysql+vue开发环境搭建

    最近开始做一个实验室资产管理系统,后台使用node.js的Express框架,前端使用vue,数据库使用mysql.在这里开始简单记录一下开发过程和遇到的问题. 今天要说的是express+mysql ...

  3. vue开发环境搭建Mac版

    一.前言 要做一个移动端app,面对webapp最流行的三个技术React,angular,vue,三选一,如何选,可参考blog移动app技术选型,react,angular, vue, 下面是对  ...

  4. 【强烈推荐,超详细,实操零失误】node.js安装 + npm安装教程 + Vue开发环境搭建

    node.js安装 + npm安装教程 + Vue开发环境搭建 [强烈推荐,超详细,实操零失误] 原博客园地址:https://www.cnblogs.com/goldlong/p/8027997.h ...

  5. vue 开发系列(一) vue 开发环境搭建

    概要 目前前端开发技术越来越像后台开发了,有一站式的解决方案. 1.JS包的依赖管理像MAVEN. 2.JS代码编译打包. 3.组件式的开发. vue 是一个前端的一站式的前端解决方案,从项目的初始化 ...

  6. 一 vue开发环境搭建

    2016年,Vue同Angular.React形成三足鼎立的局面,让前端的开发者顾不暇接,今天我们就来了解一下Vue的环境搭建. 一.node.js安装: node.js:一种javascript的运 ...

  7. 最全Vue开发环境搭建

    前言 一直想去学Vue,不过一直找不到一个契机.然公司手机端用到了跨平台开发apicloud,里边涉及到Vue组件化开发,例如header和footer的封装,以及apicloud自定义的frame等 ...

  8. Vue开发环境搭建

    Nodejs与包管理工具安装: Windows安装: https://nodejs.org/en/ 下载安装包安装就可以. Ubuntu安装: //安装nodejs sudo apt-get inst ...

  9. 【VUE】Mac下vue 开发环境搭建,以及目录结构

    1 安装Node.js 参看 node.js环境安装   http://www.cnblogs.com/richerdyoung/p/7265786.html 2 安装淘宝镜像 npm install ...

随机推荐

  1. View学习(一)-DecorView,measureSpec与LayoutParams

    这段时间在学习android中view的工作原理与自定义View的相关内容,所以未来这这几篇博客都总结一下相关的知识吧. 首先我们要了解和熟悉两个概念,DecorView 与 MeasureSpec. ...

  2. Java 泛型在实际开发中的应用

    java泛型是对Java语言的类型系统的一种扩展,泛型的本质就是将所操作的数据类型参数化.下面我会由浅入深地介绍Java的泛型. 一:泛型出现的背景 在java代码里,你会经常发现类似下边的代码: p ...

  3. Java编程代码性能优化总结

    如果有足够的时间开发.维护代码,这时候就必须考虑每个可以优化的细节了,一个一个细小的优化点累积起来,对于代码的运行效率绝对是有提升的. 代码优化的目标是: 1.减小代码的体积 2.提高代码运行的效率 ...

  4. 选择、冒泡排序,二分查找法以及一些for循环的灵活运用

    import java.util.Arrays;//冒泡排序 public class Test { public static void main(String[] args) { int[] ar ...

  5. 前端页面——Cookie与Session有什么区别

    我们在实际生活中总会遇到这样的事情,我们一旦登录(首次输入用户名和密码)某个网站之后,当我们再次访问的时候(只要不关闭浏览器),无需再次登录.而当我们在这个网站浏览一段时间后,它会产生我们浏览的记录, ...

  6. Es6 新增解构赋值

    1.数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 要想实现解构,就必须是容器,或者具有可遍历的接口. 以前,为 ...

  7. Qt中使用CEF(Windows下)

    最近项目中要在Qt中使用CEF(Chromium Embedded Framework),在这里总结下其中的几个要点. 下载合适的CEF版本 关于CEF的简介我们这里就不做介绍了,下载CEF可以有2种 ...

  8. Ubuntu14.04安装有道词典

    Ubuntu14.04安装有道词典之前要更新系统: sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade 在有道官网下载 ...

  9. serv-u 多域配置

    serv-U后,默认情况下可以通过在浏览器中输入http://IP 的方式登录到serv-u ftp 服务器控制台,也就是说serv-u在80端口监听,这样,如果想配置多个域或者是想在自己电脑上安装A ...

  10. C#开发模式——单例模式

    一.单例模式简介 单例模式是为保证一个对象,在程序运行的任何时刻只有一个实例存在,我们把这种实现方式称之为“单例模式”. 二.单例模式的核心 单例类只有一个实例存在 单例类提供一个全局访问点 单例类通 ...