0x001 概述
讲的是definePlugin的用法,和这一章依旧没有任何关系,这一章讲的时候providerPlugin
。
0x002 插件介绍
就是提供全局变量啦
0x003 全局定义jquery
栗子
-
初始化项目
+ 0x006-provider-plugin + src - index.js - webpack.config.js
-
安装依赖包
$ cnpm init -y$ cnpm install webpack --save-dev$ cnpm install jquery --save
-
编写
webpack.config.js
var path = require('path')module.exports = { entry : ['./src/index.js'], output : { path : path.resolve(__dirname, 'dist'), filename: 'index.js' }}
-
添加插件,并定义
jQuery
var path = require('path')var webpack = require('webpack')module.exports = { entry : ['./src/index.js'], output : { path : path.resolve(__dirname, 'dist'), filename: 'index.js' }, plugins: [ new webpack.ProvidePlugin({ $ : 'jquery', jQuery: 'jquery' }) ]}
-
调用
jquery
// ./src/index.js$(document).ready(function () { console.log($('#name')[0].innerHTML)})// ./src/index.html
providerPlugin followWinter
- 打包并用浏览器打开
./src/index.html
,查看控制台
0x004 全局定义自定义函数栗子
-
添加定义
timestamp: [path.resolve(__dirname, 'src/utils'), 'default']
-
添加文件
./src/utils
export default function () { console.log(new Date().getTime())}
-
调用
// ./src/index.jstimestamp()
-
打包并执行
$ webpack$ node ./dist/index.js# 输出1509977476685