webpack4之方法库项目打包 发表于 2019-10-25 | 分类于 每日精读 基础配置新建项目1234567891011121314151617181920212223242526272829303132333435# npm init -y// package.json{ "name": "ethan-methods", // 唯一的名字 "version": "1.0.0", "description": "", "main": "./dist/library.js", // 我们这个库,最终给别人使用的是dist目录下的library文件 "scripts": { "build": "webpack --config ./build/webpack.prod.js", "myPublish": "git push && npm publish --registry=https://registry.npmjs.org/" // 发布指定npm地址 }, "keywords": [], "author": "", "license": "MIT" // 设置为开源库}// webpack.config.jsconst path = require('path')const {CleanWebpackPlugin} = require('clean-webpack-plugin');module.exports = { mode: 'production', entry: './src/index.js', externals: ["lodash"], // 将库里的第三方依赖包不进行打包,不然使用的时候可能用了相同的依赖包,这样就有重复代码了 output: { path: path.resolve(__dirname, 'dist'), filename: 'library.js', library: 'fn', // fn为window的全局变量:通过<script>引入到全局变量 libraryTarget: 'umd' // umd: 通用的引入:import引入,commonJs引入,AMD引入 }, plugins: [ new CleanWebpackPlugin() ]} npm上传自己的包npm账号密码12userName: ethan6password: 常用新密码10位 命令行1234# nrm use npm# npm login# npm publish# npm unpublish 依赖包名称 --force // 删除包