详解用webpack2.0构建vue2.0超详细精简版


Posted in Javascript onApril 05, 2017

npm init -y 初始化项目

安装各种依赖项

npm install --save vue 安装vue2.0

npm install --save-dev webpack@^2.1.0-beta.25 webpack-dev-server@^2.1.0-beta.9 安装webpack以及webpack测试服务器,默认安装是1.0版本的,所以必须指定版本号

npm install --save-dev babel-core babel-loader babel-preset-es2015 安装babel,一般的浏览器是不认识es6语法的,babel的作用是将es6的语法编译成浏览器认识的语法

npm install --save-dev vue-loader vue-template-compiler 用来解析vue的组件,.vue后缀的文件

npm install --save-dev css-loader file-loader 用来解析css

编写页面

新建目录src,里面新建App.vue

<!-- 简单写个title和一个循环 -->
<template>
  <div id="example">
    <h1>{{ msg }}</h1>
    <ul>
      <li v-for="n in 5">{{ n }}</li>
    </ul>
  </div>
</template>

<script>
export default {
  data () {
    return {
      msg: 'Hello World!'
    }
  }
}
</script>

<style scoped>
#example {
  background: red;
  height: 100vh;
}
</style>

在src目录下新建main.js

/* 引入vue和主页 */
import Vue from 'vue'
import App from './App.vue'

/* 实例化一个vue */
new Vue({
 el: '#app',
 render: h => h(App)
})

配置webpack

在根目录下新建webpack.config.js

/* 引入操作路径模块和webpack */
var path = require('path');
var webpack = require('webpack');

module.exports = {
  /* 输入文件 */
  entry: './src/main.js',
  output: {
    /* 输出目录,没有则新建 */
    path: path.resolve(__dirname, './dist'),
    /* 静态目录,可以直接从这里取文件 */
    publicPath: '/dist/',
    /* 文件名 */
    filename: 'build.js'
  },
  module: {
    rules: [
      /* 用来解析vue后缀的文件 */
      {
        test: /\.vue$/,
        loader: 'vue-loader'
      },
      /* 用babel来解析js文件并把es6的语法转换成浏览器认识的语法 */
      {
        test: /\.js$/,
        loader: 'babel-loader',
        /* 排除模块安装目录的文件 */
        exclude: /node_modules/
      }
    ]
  }
}

打包项目

npm install -g webpack@^2.1.0-beta.25 全局安装webpack,以便使用webpack命令

webpack 用webpack命令打包项目,这是目录下会多出一个dist文件夹,查看里面会有build.js,发觉里面的es6语法已经被转化了

最终项目目录如图所示

详解用webpack2.0构建vue2.0超详细精简版

在根目录下新建index.html,引入build.js

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<title>vue-webpack</title>
</head>
<body>
  <section id="app"></section>
  <script src="./dist/build.js"></script>
</body>
</html>

页面如图所示

详解用webpack2.0构建vue2.0超详细精简版

这样就算打包完成了,但是每修改一次都要重新打包这样显然没有任何效率,于是需要线上的热重载

npm install -g webpack-dev-server@^2.1.0-beta.9 全局安装webpack-dev-server,以便使用webpack-dev-server命令

webpack-dev-server 等待程序运行完毕

在浏览器输入http://localhost:8080/查看页面

这时修改页面的代码,不用刷新浏览器直接更改

详解用webpack2.0构建vue2.0超详细精简版

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

Javascript 相关文章推荐
js 模拟实现类似c#下的hashtable的简单功能代码
Jan 24 Javascript
node.js中的http.get方法使用说明
Dec 14 Javascript
js的for in循环和java里foreach循环的区别分析
Jan 28 Javascript
javascript实现验证IP地址等相关信息代码
May 10 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
Oct 07 Javascript
详解Html a标签中href和onclick用法、区别、优先级别
Jan 16 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
Feb 18 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
Apr 27 jQuery
jQuery UI Draggable + Sortable 结合使用(实例讲解)
Sep 07 jQuery
vue组件jsx语法的具体使用
May 21 Javascript
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
May 17 jQuery
elementUI同一页面展示多个Dialog的实现
Nov 19 Javascript
关于vuex的学习实践笔记
Apr 05 #Javascript
详解基于webpack和vue.js搭建开发环境
Apr 05 #Javascript
ionic2打包android时gradle无法下载的解决方法
Apr 05 #Javascript
使用gulp搭建本地服务器并实现模拟ajax
Apr 05 #Javascript
Vue.js render方法使用详解
Apr 05 #Javascript
self.attachevent is not a function的解决方法
Apr 04 #Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
Apr 04 #Javascript
You might like
星际实力自我测试
2020/03/04 星际争霸
我的论坛源代码(八)
2006/10/09 PHP
PHP中“简单工厂模式”实例代码讲解
2012/09/04 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
javascript计算当月剩余天数(天数计算器)示例代码
2014/01/09 Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
2014/03/18 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
JavaScript中的原型继承基础学习教程
2016/05/06 Javascript
JS两种类型的表单提交方法实例分析
2016/11/28 Javascript
JavaScript交换两个变量值的七种解决方案
2016/12/01 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
vue实现树状表格效果
2020/12/29 Vue.js
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
总结python爬虫抓站的实用技巧
2016/08/09 Python
python使用matplotlib绘制柱状图教程
2017/02/08 Python
多版本Python共存的配置方法
2017/05/22 Python
Python高级特性切片(Slice)操作详解
2018/09/27 Python
python用pandas数据加载、存储与文件格式的实例
2018/12/07 Python
用Python配平化学方程式的方法
2019/07/20 Python
使用python turtle画高达
2020/01/19 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
俄罗斯的精英皮具:Wittchen
2018/01/29 全球购物
BLACKMORES澳洲官网:澳大利亚排名第一的保健品牌
2018/09/27 全球购物
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
优秀护士演讲稿
2014/04/30 职场文书
党员活动日总结
2014/05/05 职场文书
求职信标题怎么写
2014/05/26 职场文书
司法局火灾防控方案
2014/06/05 职场文书
学校2014年度工作总结
2014/12/06 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
Spring Boot接口定义和全局异常统一处理
2022/04/20 Java/Android