webpack傻瓜入门教程

webpack安装

  • 新建立项目文件夹,如app(文件夹名称不要大写)
  • 前往https://nodejs.org/en/ 下载nodejs并安装
  • 进入app文件夹,shif+鼠标右键,在此处打开命令窗口,npm init 并enter初始化生成config.json
    npm init
    生成的package.json如下:
    package.json

  • 安装webpack

npm install webpack -g //全局安装
npm install webpack --save-dev //本地安装,并写入到config.json

本地安装并写入后,package.json新增了devDependencies配置;打开package.json,将main的值改为“result.js”
这里写图片描述

webpack打包

  • 新建index.html,并在其中引入主result.js
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>lidysun webpack入门教程</title>
</head>
<body>
  <script src="result.js"></script>
</body>
</html>
  • 新建entry.js入口文件
document.write('我来自entry.js文件!');
  • 命令窗口webpack编译:
webpack entry.js result.js

浏览器打开index.html,刷新可看到结果。
这里写图片描述

webpack加载其它js模块

  • 新建other.js
module.exports = '<br>我来自other.js'
  • 修改entry.js
document.write('我来自entry.js文件!');
document.write(require('./other.js'));
  • 重新编译webpack entry.js result.js 并刷新浏览器,可以看到other.js的内容也输出了:
    这里写图片描述

webpack加载css模块

  • 新建style.css
body{color:#ff6600;}
  • 本地安装css-loader style-loader
npm install css-loader style-loader --save-dev

安装完成后,重新打开package.json,检查依赖是否自动添加
这里写图片描述

  • 修改entry.js
    注意:style-loader和css-loader的顺序不能变,且后面的 ; 分号不能遗漏。
require("!style-loader!css-loader!./style.css");
document.write('我来自entry.js文件!');
document.write(require('./other.js'));
  • 编译 webpack entry.js result.js 并刷新index.html可以看到样式变化
    这里写图片描述

webpack配置

  • 新建webpack.config.js
var webpack = require('webpack');
module.exports = {
  entry:'./entry.js',
  output:{
    path:__dirname,
    filename:'result.js',
  },
  module:{
    loaders:[
      {test:/\.css$/,loader:'style-loader!css-loader'}
    ]
  }
}

entry 输入文件,相当于设置webpack entry.js result.js 中的entry.js
output 输出文件,相当于设置webpack entry.js result.js 中的result.js
path 输出文件的位置,__dirname 表示当前目录,可根据实际项目更改,如 ./js
loader 设置不同模块的编译方式。
当webpack.config.js中没有设置loaders {test:/\.css$/,loader:'style-loader!css-loader'} 时,并且entry.js引入css的格式为简单的 require('./style.css'); 时,我们编译命令必须加上参数webpack entry.js result.js --module-bind "css=style-loader!css-loader",但当我们设置了loaders后,引入css文件也可以像js一样简单,编译时就可以不用传参,简直爽爆了。

  • 配置完webpack.config.js后,可以对style.css修改,以示区分
body{color:black;}
  • 编译
    因为设置好了webpack.config.js文件,所以编译时入口文件entry.js、结果文件result.js、css模块参数都统统省略,直接 webpack 编译即可。编译后刷新index.html可见效果
    这里写图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值