2024/02/18
组件内不执行 useContext 吐出的方法。
怀疑是执行了初始自定义的空方法,打印下来确实是。
由此怀疑传参不成功,检查层级结构,破案了, Context.Provider 根本没包裹目标组件。。。
2024/02/19
线上用户反馈iframe打不开。
首先觉得是这个用户自己的问题,去查了让其关闭隐私模式和更换浏览器,均无果。
自己到线上尝试,也打不开,开始百度排查iframe打不开原因,发现控制台有打印至此破案了:iframe的准许嵌套策略由响应头控制:
Content-Security-Policy: frame-ancestors xxx.xxx.xxx 或 x-frame-options: xxx
(在iframe嵌套网站请求的响应头里也能看到两者)
当前网站近期改造过新域名,不在嵌套网站返回的白名单内, connect refuse,修改过后用户反馈ok。
2024/03/08
js Object key,数字和数字的字符串可替代,都可取值。
const num = 2;
const str = '2'
const numObj = {}
const strObj = {}
numObj[num] = 'two'
strObj[str] = 'two'
console.log(Object.keys(numObj)) // ["2"] // 转成了字符
console.log(Object.keys(strObj)) // ["2"] // 仍是字符
console.log(numObj["2"]) // two // 字符2能取...
console.log(numObj[2]) // two // 数字2也能取...
console.log(strObj["2"]) // two // 字符2能取...
console.log(strObj[2]) // two // 数字2也能取...
不愧是弱类型,这里也包含了转换