safari 浏览器 window.open 兼容问题
safari 浏览器中,当在异步函数后执行 window.open 方法时,新窗口会被阻止。
根本原因是 Safari 浏览器的安全策略阻止了窗口打开。 zhuanlan.zhihu.com/p/270255474
常见处理方法 juejin.cn/post/741430…
- 当前窗口打开
- 在异步前打开一个空白窗口,异步结束后替换成 localtion.href
- 转成 a 标签 click 处理。
- 构建 dom,模拟点击
- 弹个窗,让用户自己点击弹窗中的地址
vscode 和全局 node 版本不一致
遇到一个问题,vscode 中的版本显示是 16,全局的 node 版本显示是 20。
可能的原因
-
项目中配置了 .nvmrc,导致每次打开项目会自动切换 node 版本。 这种情况,直接修改 .nvmrc 和系统中版本保持一致就行
-
环境变量问题,vscode 读取环境变量的地址和全局不一样,导致版本不同。
- 粗暴的解决办法,vscode 中输入
which node查看 path。直接rm -rf <path>。 nvm alias default <version>设置下 默认版本nvm use default- 重新打开编辑器就好了....
- 粗暴的解决办法,vscode 中输入
vscode i18n Ally 报错 没有找到文案文件。 项目配置可能存在问题。
本来以为是配置出问题,修改了一遍都搞不定。
这篇文章了提到了看日志是否报错。 segmentfault.com/q/101000004…
果然,显示 /bin/sh: node: command not found。还是之前 node 的问题,最终发现还是环境变量的问题,修改了对应的环境变量就好了....