tiansh / yawf

药方 Yet Another Weibo Filter 用户脚本,微博过滤和版面改造等 userscript, filter weibo and modify layout
https://tiansh.github.io/yawf/
Mozilla Public License 2.0
758 stars 36 forks source link

在部分国产浏览器中,尚不支持可选链与双问号 #170

Closed Sunev closed 3 years ago

Sunev commented 3 years ago

我也知道这样写代码很爽 不过兼容性错误导致整个药方无法运行,是否能够通过使用Babel 消除这个问题?

tiansh commented 3 years ago

这个问题很简单,因为脚本也没打算支持这些浏览器。 可以暂时用旧版。

tiansh commented 3 years ago

其实更简单的办法是把涉及到这两个操作符的那几次提交回滚一下。比配置 babel 可能还方便一点。

tiansh commented 3 years ago

不过现在具体是什么浏览器不支持啊?傲游5的话就算了。

Sunev commented 3 years ago

是傲游5。。那算了,我自己fork一个

Sunev commented 3 years ago

存了很多东西在傲游里,比起切换浏览器,还是打包一下与我自己更方便

tiansh commented 3 years ago

傲游5 的大概对应 chromium 什么版本?

Sunev commented 3 years ago

navigator.appVersion "5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36 Maxthon/5.3.8.2000"

tiansh commented 3 years ago

我先提醒一下,再过半年到一年,等浏览器的版本再涨一涨,应该会开始用 WeakRef,这个应该没办法 Polyfill,所以在那之后可能 Babel 也会用不了。

tiansh commented 3 years ago

现在用到 ?.,主要是 V7 处理的时候只能侵入到 Vue 组件里面,导致微博稍微改一改代码,这边就可能导致组件没法渲染。所以不写 ?. 的话,满处都要 || 。 而且这些 Vue 组件我也很多拿不到他们的生命周期,很多时候需要 WeakSet / WeakMap 甚至 WeakRef 才能保证没内存泄漏。不然应该没一会儿就会内存爆掉。现在因为没 WeakRef 用,有一些代码写的很纠结,这个预订后面也要改。但是会考虑 Firefox ESR 的版本。