博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webpack2.0简单配置教程
阅读量:6297 次
发布时间:2019-06-22

本文共 3130 字,大约阅读时间需要 10 分钟。

 以前习惯用gulp+less来开发项目,由于公司项目用的vue开发的,所以学下webpack这个打包工具。以下是我学习时的笔记,希望给在webpack配置过程中遇到麻烦的朋友一丝帮助。

目前只配置了sass,css,js,html,es6,图片编译,字体引入,热加载这几项,简单项目已经够用。

如果深入webpack可以配置很多,原谅我也只是初次配置

1.首先建一个自己的项目文件夹,npm init -y快速生成一个配置文件

2. npm i webpack -D   本地安装webpack 

3. npm i webpack-dev-server -g   全局安装webpack-dev-server

4. npm i webpack-dev-server -D 添加到package.json文件里

5.以下是我的package.json,里面的包都是常用的

{  "name": "webpack-demo",  "version": "1.0.0",  "description": "",  "main": "index.js",  "scripts": {    "test": "echo \"Error: no test specified\" && exit 1",    "start": "webpack-dev-server",    "build": "webpack"  },  "author": "",  "license": "ISC",  "devDependencies": {    "babel-core": "^6.0.0",    "babel-loader": "^6.0.0",    "babel-preset-latest": "^6.0.0",    "cross-env": "^3.0.0",    "css-loader": "^0.28.0",    "file-loader": "^0.9.0",    "extract-text-webpack-plugin": "^2.1.0",    "html-webpack-plugin": "^2.28.0",    "node-sass": "^4.5.2",    "sass-loader": "^6.0.3",    "style-loader": "^0.16.1",    "webpack": "^2.2.0",    "webpack-dev-server": "^2.4.2"  }}

根目录下的webpack.config.json

// html压缩var HtmlWebpackPlugin = require('html-webpack-plugin');// js css分离var ExtractTextPlugin = require('extract-text-webpack-plugin');var path = require('path')var webpack = require('webpack')module.exports = {    // 配置入口文件  entry: {      build: './src/main.js'  },  // 配置输出路径  output: {    path: path.resolve(__dirname, './dist'),    // publicPath: '/dist/',//指定资源引用目录    filename: '[name].js'  },  // loader模块配置  module: {    loaders: [        // js 文件      {        test: /\.js$/,        loader: 'babel-loader',        exclude: /node_modules/      },      // css 文件      {        test: /\.css$/,        use: ExtractTextPlugin.extract({          fallback: "style-loader",          use: "css-loader"         })      },      //解析.scss文件      {        test: /\.scss$/,        use: ExtractTextPlugin.extract({          fallback: "style-loader",          use: ["css-loader", "sass-loader"]        })      },      // 字体      {        test: /\.(eot|svg|ttf|woff|woff2)(\?\S*)?$/,        loader: 'file-loader'      },      // 图片      {        test: /\.(png|jpe?g|gif|svg)(\?\S*)?$/,        loader: 'file-loader',        query: {          name: '[name].[ext]?[hash]'        }      }    ]  },  // 插件配置  plugins: [      new HtmlWebpackPlugin({          template: './index.html' // 模版文件      }),      new ExtractTextPlugin({          filename: 'style.css'          /*filename: (getPath) => {              return getPath('dist/[name].css').replace('dist','css')          }*/      })  ],  // webpack-dev-server 热加载  devServer: {    historyApiFallback: true,    noInfo: true  },  devtool: '#eval-source-map'}

.babelrc文件

{  "presets": [    ["latest", {      "es2015": { "modules": false }    }]  ]}

index.html移入编译后的文件

    
Document

hello

hello

hello hello world

我的项目目录

main.js里面移入所有需要打包的文件

import {hello,hello1} from './script/hello1';import {demo} from './script/hello';import './style/hello.css';import './style/hello.scss';

命令行npm start 启动项目  npm run build 编译项目

我托管到了github,有兴趣的同学可以参考下:https://github.com/wmui/webpack-demo

转载地址:http://jslta.baihongyu.com/

你可能感兴趣的文章
css面试题
查看>>
Vue组建通信
查看>>
用CSS画一个带阴影的三角形
查看>>
前端Vue:函数式组件
查看>>
程鑫峰:1.26特朗.普力挺美元力挽狂澜,伦敦金行情分析
查看>>
safari下video标签无法播放视频的问题
查看>>
01 iOS中UISearchBar 如何更改背景颜色,如何去掉两条黑线
查看>>
对象的继承及对象相关内容探究
查看>>
Spring: IOC容器的实现
查看>>
Serverless五大优势,成本和规模不是最重要的,这点才是
查看>>
Nginx 极简入门教程!
查看>>
iOS BLE 开发小记[4] 如何实现 CoreBluetooth 后台运行模式
查看>>
Item 23 不要在代码中使用新的原生态类型(raw type)
查看>>
为网页添加留言功能
查看>>
JavaScript—数组(17)
查看>>
Android 密钥保护和 C/S 网络传输安全理论指南
查看>>
以太坊ERC20代币合约优化版
查看>>
Why I Began
查看>>
同一台电脑上Windows 7和Ubuntu 14.04的CPU温度和GPU温度对比
查看>>
js数组的操作
查看>>