
webpack
vieber
欢迎关注本人公众号:程序员软技能
展开
-
sass添加全局函数
增加这个,这样全局就会有对应的scss函数,直接在webpack的专门的scssloader里面是不生效的。需要指出因为我们是vue文件里面使用scss,所以这块scss的解析需要在vue-loader里面去解决。所以配置scss全局函数我们需要在vue-loader里面去添加。这里的vueLoaderConfig就有对scss语法的配置。里面关键在于utils.cssLoaders这个函数的实现。这是webpack.base.conf.js。这是vueloaderconf。例如下面这种配置就是不生效的。原创 2023-01-07 16:19:50 · 462 阅读 · 0 评论 -
Cannot find module vue/compiler-sfc
我的vue版本是2.5,但是我的vue-loader版本升级到了vue-loader:17.3.0。经查,原来是vue2不能工作在vue-loader17以上,需要降到。原创 2022-08-29 23:06:37 · 2651 阅读 · 0 评论 -
Error: Cannot find module ‘webpack/bin/config-yargs‘
说我目前webpack5没有这个webpack-dev-server这个事webpack2或者3才有的东西,那说明现在启动方式还是不对,不能用这个webpack-dev-serevr启动,仔细发现我本地的package.json里面的不对,版本还是老的,我需要卸载重新安装才行。改完之后发现还是报错,但是提示需要安装webpack-cli,然后就安装下。看起来就是webpack语法的问题了,我尝试修改下。尝试装下试试,但是安装又报版本的错误。直接搜索,需要将启动语法从原来的。装了之后启动,然后报新的错误。原创 2022-08-24 22:54:52 · 2752 阅读 · 0 评论 -
node_modules里面包调试
我们有时候自己发布的包有问题,我们需要自己调试一下,看看哪里有问题,在node_modules目录下面我们修改里面的文件,发现webpack并没有热更新。查看package.json里面的main配置,也没有问题。只有重新启动webpack才可以。得出结论node_modeuls里面的文件更新必须要重启webpack配置,否则不会热更新生效。如果有依赖的第三方包有bug,我们想修改可以使用patch-package这个包来进行管理我们新增的diff,更加的方便。...原创 2022-05-30 14:17:45 · 1650 阅读 · 0 评论 -
regeneratorRuntime is not defined问题解决
错误背景报错提示:regeneratorRuntime is not defined我们在使用原生js直接引入的时候,然后里面使用了Async/await 用法,所以就会报这个问题解决方案安装npm install --save-dev @babel/plugin-transform-runtime.babelrc配置{ "presets": [ ["env", {"modules": false}], "stage-3" ], "pl原创 2021-11-10 17:39:43 · 1662 阅读 · 0 评论 -
webpack3更新为webpack5
为提升老vue2项目的webpack编译速度,node_modules/webpack/node_modules/schema-utils/dist/validate.js:105 throw new _ValidationError.default(errors, schema, configuration); ^ValidationError: Invalid configuration object. Webpack has been initialized using a co原创 2021-09-08 10:40:20 · 2606 阅读 · 0 评论 -
webpack编译不产生soucemap
问题解决过程将devtool已经改成了'#source-map',结果map文件死活不出。经调查原来是因为new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false, drop_debugger: true, drop_console: true }, sourceMap: true}),这里的souceMap一开始为false,所以导致不出,改为true原创 2021-07-08 16:33:44 · 1519 阅读 · 0 评论 -
webpack-dev-server启动的前端项目使用nodemon监听自动重启
原来启动是这样"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",修改webpack需要手动重启,现在使用nodemon配置为自动重启"start": "nodemon --exec npm run dev","dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",然后配置原创 2021-01-24 21:45:54 · 852 阅读 · 0 评论 -
自己把icon集成进去组件库
遇到的问题因为png无法修改颜色,所以使用svg形式,然后因为webpack有对svg进行编译转化,导致成为base64,无法使用v-html解决方案想到的一个解决办法是把svg的webpack去掉{ test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, loader: 'url-loader', options: { limit: 10000, name: utils.assetsPath('img/[name原创 2020-12-08 19:24:40 · 246 阅读 · 0 评论 -
package-lock.json不需要写进 .gitignore
在我们的前端项目中,npm install之后会自动生成package-lock.json文件,不要把这个加入.gitignore因为我们实践出过一个问题,我们将package-lock.json放入.gitignore文件中,虽然我们把package.json中依赖的版本号写死了,但是有一天突然发现在编译机编译失败了,用之前编译成功的代码去编译也失败了,很奇怪。然后尝试本地复现这个问题,重新编译没有问题,但是当我们把node_modeuls和package-lock.json文件都删掉之后就出现了这个原创 2020-11-11 16:54:14 · 8541 阅读 · 0 评论 -
webpack在编译机编译每次hash值不一样问题探索
很奇怪我的vue项目,在本地用webpack多次编译,代码不变的情况下,每次编译产出的js等静态资源的hash值都是一样的,但是提交到编译机上面编译就是不一样。现在来研究一下原因。起初是怀疑是版本号的问题,所以把package.json的node_modules里面的模块版本号都给写死了。但是不顶用。两次编译还是hash值不一样。怀疑是编译机每次不一样的问题,因为公司用的是编译集群,每次给你分配的机器可能不一样,然后就申请固定的机器来编译,结果编译hash还是不一样接着怀疑是node-s原创 2020-10-09 16:11:05 · 2259 阅读 · 1 评论 -
使用extract-text-webpack-plugin报错Module build failed: Error: “extract-text-webpack-plugin“ loader is
报错信息ERROR in ./node_modules/extract-text-webpack-plugin/dist/loader.js?{"omit":1,"remove":true}!./node_modules/vue-style-loader!./node_modules/css-loader?{"minimize":true,"sourceMap":false}!./node_modules/vue-loader/lib/style-compiler?{"optionsId":"0","vu原创 2020-09-24 14:20:50 · 2845 阅读 · 0 评论 -
webpack编译路径
entry: './entry-client',这里entry的编译路径是从编译脚本所在的当前路径在开始找的。不是从当前webpack配置文件所在目录开始找的。比如这个webpack在build目录下,但是其实build.sh是和webpack同一级目录,entry-client是和build.sh同一级,所以这个要写上面的形式,从build.sh所在路径开始查找...原创 2020-08-13 17:19:09 · 434 阅读 · 0 评论 -
webpack的proxyTable配置规则
配置proxyTable之后,请求的接口会从前到后依次去匹配。配置规则类似于express路由请求接口配置规则,一旦匹配到,后面即便更加精确匹配的接口也不会去查找例如,先匹配到 /a 就不会继续往下匹配更为精确到/a/b但是反之可以,如果先匹配到更为精确到/a/b,但是有的请求就不是这个,前缀是/a就可以匹配到。总结更为精确匹配到写到最前面,模糊匹配的往后放...原创 2020-07-13 15:03:48 · 1193 阅读 · 0 评论 -
Module build failed: TypeError: this.getResolve is not a function问题
问题原因是安装新版的sass-loader版本过高。报错原来版本 "webpack": "^3.6.0","node-sass": "^4.13.1", "sass-loader": "^8.0.2",重新安装sass-loader版本"sass-loader": "6.0.6"这样就修复了...原创 2020-01-27 13:05:38 · 953 阅读 · 1 评论 -
webpack配置proxyTable配置前缀匹配问题
proxyTable里面配置如果两个接口有相同的前缀,则会直接使用前面的,不会用后面的例如'/aaa/bb/ccc': { target: 'xxx', prependPath: true, changeOrigin: true, secure: false },和'/aaa/bb/cccccc': { target: 'xxx'...原创 2019-12-13 14:52:01 · 2443 阅读 · 0 评论 -
vue项目webpack编译运行报错loaderUtils.parseQuery()
报错信息DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see https://github.com/webpack/loader-utils/issues/56parseQuery() will be replaced with getOpti...原创 2019-11-26 15:54:40 · 1228 阅读 · 0 评论 -
Webpack的path和public path区别
path是webpack编译产出输出目录,编译会产出到某个路径下面,例如assetsRoot: path.resolve(__dirname, '../dist'),publicPath 指的是项目资源中引用的一个基础路径,比如src里面引入的路径,<link rel="preload" href="/public/manifest.1dcb5797d6d04d1bd383....原创 2019-11-19 19:27:35 · 1108 阅读 · 0 评论 -
提升webpack编译速度
我们本地开发的时候可以在node.env上定义变量,然后在使用webpack编译的时候根据本地的环境变量,然后做编译的简化需求。贴上代码let entry = { xxx: './src/xxx', xxx: './src/xxx', xxx: './src/xxx', xxx: './src/xxx', xxx: './src/xxx'};fun...原创 2019-11-15 15:04:44 · 761 阅读 · 0 评论 -
npm i新项目下载报错 found for array-tree-filter
报错信息npm ERR! code ETARGET npm ERR! notarget No matching version found for array-tree-filter@1.0.2 npm ERR! notarget In most cases you or one of your dependencies are requesting npm ERR! notarget ...原创 2018-07-10 20:17:23 · 2984 阅读 · 0 评论 -
webpack2配置浏览器自动刷新
前言老项目用的webpack2,有浏览器刷新开发起来方便多了解决单页面的entry: [ // 给webpack-dev-server启动一个本地服务,并连接到8080端口 'webpack-dev-server/client?http://localhost:8080', // 给上面启动的本地服务开启自动刷新功能,'only-dev-server'的...原创 2018-07-19 15:22:04 · 908 阅读 · 0 评论 -
Error: Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime
npm run build的时候报错Module build failed: ModuleBuildError: Module build failed: Error: Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime (64)解决方案Had to do...原创 2018-12-03 16:18:59 · 2425 阅读 · 0 评论 -
node 项目loaderUtils.parseQuery() received a non-string value which can be problematic报错解决办法
(node:82942) DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see https://github.com/webpack/loader-utils/issues/56parseQuery() will be replaced with...原创 2019-04-19 17:57:55 · 4285 阅读 · 0 评论 -
安卓5.1手机空白bug
发现是自己引入的node_modules js库,没有进行es6到es5的转换,导致低端机型不支持,{ test: /\.js$/, loader: 'babel-loader', include: [resolve('src'), resolve('test')], options: { ...原创 2019-05-06 14:48:53 · 499 阅读 · 0 评论 -
webpack打包报错ERROR in js/app.5997574802e535cd2cca.js from UglifyJs Unexpected token: punc (() [js/app.
报错信息ERROR in js/app.5997574802e535cd2cca.js from UglifyJsUnexpected token: punc (() [js/app.5997574802e535cd2cca.js:45,8]Build failed with errors.解决方案增加.babelrc文件{ "presets": [ ...原创 2018-06-27 21:22:15 · 1982 阅读 · 0 评论