07月07, 2019

webpack publicPath 踩坑记

公司层面统一了技术栈,开始全面地使用React。所以我之前写的一个比较简陋的cui-react-scripts,要开始大规模地要在各个业务里面坑踩。

这周他们有一个需求是能自定义publicPath

这里会有一些边界上的处理,比如说开发人员传了xx,你得将publicPath处理成/xx/

我们都知道像path.join,可以处理这样的情况:

const path = require("path");
// path.join("/", "xx", "/");
// path.join("/", "xx/", "/");
// path.join("/", "/xx/", "/");

因此,我果断用了这个。。然而噩梦是,发布新版本后,同事说dev server启动,页面说找不到,can not get /

而我的是好的,让我另外一个同事试了一下,也是好的。最后猜测是不是平台的关系,我的是macOs,对方是windows。

最终验证果然是平台的原因,在windows下就会得到那样的报错,猜测是dev server在跑的时候,publicPath在window下得到的是某个磁盘路径,然后找不到。

本文链接:www.my-fe.pub/post/webpack-public-path-bug.html

-- EOF --

Comments

评论加载中...

注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。