【问题标题】:Polyfill Set in TypeScript but "Set is not defined"TypeScript 中的 Polyfill 集,但“未定义集”
【发布时间】:2018-04-17 15:10:57
【问题描述】:

我将es6 作为tsconfig.jsoncompilerOptions.lib 中的选项之一,所以我假设这使得Set 在TypeScript (2.8.1) 中可用。大多数浏览器都可以工作,但有些不能——我仍在记录产生此错误的 Android 和 UC Mobile 浏览器:

Uncaught ReferenceError: Set is not defined

我从polyfill.io 添加了 Set 但这似乎没有什么区别:

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Set"></script>

有没有办法在这些浏览器的其余部分中填充 Set?

【问题讨论】:

    标签: typescript polyfills


    【解决方案1】:

    似乎 cdn.polyfill.io 无法识别这些设备的用户代理。根据docs - 如果用户代理未知且具有 unknown 请求参数,您可以强制返回默认 polyfill:

    <script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Set&unknown=polyfill"></script>
    

    【讨论】:

    • 谢谢,我会试一试,看看它是否能清除错误日志。它看起来像 unknown=polyfill breaks the UC Desktop Browser 但这是一个单独的问题。
    • 解决了这个问题,但现在它遇到了更多的 UC 浏览器问题。看起来像一个异常错误的浏览器。
    • Polyfill.io 不支持移动或桌面 UC 浏览器,设置 unknown=polyfill 会产生各种其他错误。我切换到自己导入 polyfill。
    猜你喜欢
    • 2017-11-24
    • 2017-11-02
    • 2017-08-23
    • 2015-08-16
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-13
    相关资源
    最近更新 更多