webpack frames
1.0.0
webpack4-vue和webpack3-vue包含的文件夹完全一致,有需要请自行复制webpack4-react和webpack3-react包含的文件夹完全一致,有需要请自行复制.babelrc的plugins中移除react-hot-loader/babelpackage.json的devDependencies中移除react-hot-loaderconfig/opt.dev.js中devServer.inline必须为false(vue只需修改这一处)react-hot-loadermock api,会自动读取src/mock下的文件,并进行热更新,代码逻辑在config/mock.js, 其中有example示例vue和vue-template-compiler版本必须完全一致,否则有不可预见错误config目录webapck134,react,vue配置已统一,不同项目仅需改opt.self.js即可readme说明有遗漏,麻烦移驾到文件中看代码注释,关键点在config目录中的文件均有注释和官方参考文档地址devDependencies被用来放锁版本的依赖了,dependencies是保持最新的依赖;由于不用发布到npm上,因此这个分类比较随意,甚至说是错误的;若要发布,请做好区分,具体细节谷歌百度找文档DllPlugin和CommonsChunkPlugin或splitChunks存在功能重复,而且前者需前置执行一次webpack命令,另外可以用externals来简单替代,后者可操作的空间大,可以自由拆包,使文件大小更均匀,故后续将不再使用DllPluginnpm config set registry https://registry.npm.taobao.orgnpm i -g npminstallnpminstall -cnpm cache clean -f和npm cache verify -fnode_modules目录npminstall -cnode和npmnpminstall -c和npm install不兼容,前者比后者快很多,但是不能混着用node_modules文件夹node-v12.0.0有问题请先别升级,node-v12的最新版已经没有问题node_modules重试npm start
npm run env -- FOR_IE=1 npm startnpm run app
npm run env -- FOR_IE=1 npm run appnpm run report 查看生产包 bundle 组成
npm run env -- FOR_IE=1 npm run reportnpm run debug 新增断点调式启动,端口 7777
npm run env -- FOR_IE=1 npm run debugnpm i -g npm-check-updatespackage.json目录执行ncu(查看) ncu -u(更新)官方文档
package.json的devDependencies中加入react-hot-loaderwebpack.cfg.dev.js的devServer.inline一定要为true.babelrc的plugins中加入react-hot-loader/babel--hot, 勿同时使用HotModuleReplacementPluginexport根组件加修饰,并且在react前引入react-hot-loaderimport { hot } from 'react-hot-loader';
export default hot(module)(App);注: 仅4.3.12支持ie8+react@0,且需要一个小变更,已在脚本内完成
图片压缩 => url-loader(4kb以下)svg压缩 => svg-url-loader// 建议4kb以下使用,较大文件建议用file-loader
const src = require("!svg-url-loader?noquotes!./x.svg");eslint规则文档js规范中文版js规范es5,es6,reactreact规范中文版es5规范中文版esling配置 eslint-config-egg eslint-config-react-app eslint-config-alieslint --fix来统一eslint --fix来统一",单引号x27,双引号x22,那样就统一双引号了