1. 打包後,node和瀏覽器可以使用.
2. 能夠做爲SDK提供給node,或者是前端
3. 打包後,能夠發佈npm包
複製代碼
1. mkdir webpack-build
2. cd webpack-build
3. npm init,不停回車,而後最後輸入yes便可
複製代碼
|
| - package.json
| - webpack.config.js
| - node_modules
| - index.js
| - dist
複製代碼
webpack.config.js配置以下:
javascript
const path = require("path");
module.exports = {
mode: "production",
entry: "./index.js",
output: {
path: path.resolve(__dirname, "./dist"),
filename: "webpack-numbers.js",
libraryTarget: "umd",
globalObject: "this",
library: "webpackNumbers"
}
};
複製代碼
此處須要進行設置,這樣就可以使用在node和瀏覽器中html
libraryTarget: "umd"
globalObject: "this"
前端
export function numToWord(num) {
return console.log('object')
}
複製代碼
{
"name": "test-webpack",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack"
},
"author": "",
"license": "ISC",
"dependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.4",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-preset-env": "^1.6.1",
"eslint": "^3.9.1",
"eslint-loader": "^1.6.1",
"lodash": "^4.16.6",
"webpack": "^4.20.2",
"webpack-cli": "^3.1.1"
}
}
運行:npm run build,會在dist目錄下生成webpack-numbers.js文件
複製代碼
1. cd dist
2. touch test.js
複製代碼
編寫test.js文件:java
let app = require("./webpack-numbers.js");
let data = app.numToWord();
console.log(data);
複製代碼
1. node中使用,應用打包後的webpack-numbers.js,node test.js
2. 瀏覽器中使用
<html>
<head>
<title>webpack library example - Transalating numbers</title>
<script
type="text/javascript"
src="https://unpkg.com/lodash@4.16.6"
></script>
</head>
<body>
<div id="root"></div>
<script type="text/javascript" src="./webpack-numbers.js"></script>
<script type="text/javascript">
console.log(webpackNumbers.wordtonum("One"));
</script>
</body>
</html>
複製代碼
1. 修改package.json,修改main中,"./dist/webpack-numbers.js"
{
"name": "test-webpack",
"version": "1.0.0",
"description": "",
"main": "./dist/webpack-numbers.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack"
},
"author": "",
"license": "ISC",
"dependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.4",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-preset-env": "^1.6.1",
"eslint": "^3.9.1",
"eslint-loader": "^1.6.1",
"lodash": "^4.16.6",
"webpack": "^4.20.2",
"webpack-cli": "^3.1.1"
}
}
2. npm adduser, 寫入 user password emial
3. npm pubilsh,從而能夠實現發佈,能夠npm網站查看本身的包
複製代碼