zoukankan      html  css  js  c++  java
  • webpack初体验

    • 环境搭建

    系统mac

    使用npm install webpack -g 安装webpack

    • 项目创建

    mkdir demo && cd demo

    npm init  如图

    创建项目内容,在项目根目录创建个src文件夹

    mkdir src && cd src

    添加两个文件a.js 和入口文件index.js

    echo "console.log('this is a.js')" >a.js
    echo "require('./a.js'); console.log('this is index.js')" >index.js

    回到项目根目录,创建webpack 配置文件  webpack.config.js

    var webpack = require('webpack')
    var path =require('path')
    var HtmlWebpackPlugin = require('html-webpack-plugin');
    module.exports = {
      entry:{
       app:path.join(__dirname,'src','index.js')  //指定入口文件,若有多个入口,则使用键值对定义
      },
      output:{
       filename:'[name]-[hash].js', //输出文件名,【name】为entry定义的键,可用自动生成文件的hash值,若不更改内容则hash不变
       path:path.join(__dirname,'dist')//输出目录  
      },

    plugins:[
    new webpack.BannerPlugin('版权所有,翻版必究'),
    new webpack.HotModuleReplacementPlugin(), //热替换插件
    new HtmlWebpackPlugin({ template:'./index.html'}), //html插件,可用指定模板
    new webpack.optimize.OccurrenceOrderPlugin()
    ]

    }

    打包项目

    执行指令webpack 会自动检测执行目录下的webpack.config.js 配置文件

    结果如图

    运行项目

    还需添加webpack-dev-server 的依赖

    npm i webpack-dev-server -D  //-D 等价于--save-dev

    并追加webpack配置文件关于devserver的配置

    devServer: {
           contentBase: path.join(__dirname, "dist"),  //webpack-dev-server运行时的根目录
           // stats: "errors-only",  //编译时,输出面板输出内容的过滤状态
           inline:true,  //内容更改时,自动显示在浏览器
            hot:true    //热替换
       }

    执行./node_modules/.bin/webpack-dev-server

    结果如图

    最终项目结构如图

  • 相关阅读:
    mysql数据库汉字首字母简拼全拼
    window.showModalDialog刷新父窗口和本窗口的方法及注意
    c#.net语句e.Row.RowType == DataControlRowType.DataRow是什么含义?
    SQL 拿到一天内的数据
    在线脚本编辑器
    输入正确的邮箱地址
    jquery中的$(document).ready()方法和window.onload方法区别
    转载从XML文件中读取数据绑定到DropDownList
    GridView中DropDownList联动
    For 循环 和Foreach 的区别
  • 原文地址:https://www.cnblogs.com/HansonYao/p/webpack-init.html
Copyright © 2011-2022 走看看