docs(README): Add suggested webpack usage (#194)
This commit is contained in:
parent
6b8e7e18ed
commit
44a473db5d
33
README.md
33
README.md
|
@ -16,6 +16,7 @@ Table of contents
|
||||||
* [Installation](#installation)
|
* [Installation](#installation)
|
||||||
* [Basic Setup](#basic-setup)
|
* [Basic Setup](#basic-setup)
|
||||||
* [Basic Setup with module bundlers](#basic-setup-with-module-bundlers)
|
* [Basic Setup with module bundlers](#basic-setup-with-module-bundlers)
|
||||||
|
* [Usage with webpack without bundling](#usage-with-webpack-without-bundling)
|
||||||
* [Using the Promise-based APIs](#using-the-promise-based-apis)
|
* [Using the Promise-based APIs](#using-the-promise-based-apis)
|
||||||
* [Examples](#examples)
|
* [Examples](#examples)
|
||||||
* [Known Limitations and Incompatibilities](#known-limitations-and-incompatibilities)
|
* [Known Limitations and Incompatibilities](#known-limitations-and-incompatibilities)
|
||||||
|
@ -155,6 +156,38 @@ var browser = require("webextension-polyfill/dist/browser-polyfill.min");
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Usage with webpack without bundling
|
||||||
|
|
||||||
|
The previous section explains how to bundle `webextension-polyfill` in each script. An alternative method is to include a single copy of the library in your extension, and load the library as shown in [Basic Setup](#basic-setup). You will need to install [copy-webpack-plugin](https://www.npmjs.com/package/copy-webpack-plugin):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
npm install --save-dev copy-webpack-plugin
|
||||||
|
```
|
||||||
|
|
||||||
|
**In `webpack.config.js`,** import the plugin and configure it this way. It will copy the minified file into your _output_ folder, wherever your other webpack files are generated.
|
||||||
|
|
||||||
|
```js
|
||||||
|
const CopyWebpackPlugin = require('copy-webpack-plugin');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
/* Your regular webpack config, probably including something like this:
|
||||||
|
output: {
|
||||||
|
path: path.join(__dirname, 'distribution'),
|
||||||
|
filename: '[name].js'
|
||||||
|
},
|
||||||
|
*/
|
||||||
|
plugins: [
|
||||||
|
new CopyWebpackPlugin([
|
||||||
|
{
|
||||||
|
from: 'node_modules/webextension-polyfill/dist/browser-polyfill.js'
|
||||||
|
}
|
||||||
|
])
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
And then include the file in each context, using the `manifest.json` just like in [Basic Setup](#basic-setup).
|
||||||
|
|
||||||
## Using the Promise-based APIs
|
## Using the Promise-based APIs
|
||||||
|
|
||||||
The Promise-based APIs in the `browser` namespace work, for the most part,
|
The Promise-based APIs in the `browser` namespace work, for the most part,
|
||||||
|
|
Loading…
Reference in New Issue