如何使最新的 Angular 版本与旧浏览器兼容?

问题描述 投票:0回答:1

Angular 在其文档中声明,它与所有主要浏览器的 2 个最新版本(以及 Firefox 的最新+ESR)兼容。由于 Angular 在底层使用标准 DOM API,因此应该可以对 Angular 进行填充以与旧浏览器兼容。

我的具体用例是:我需要支持不可更新的旧浏览器,因为它们已备份到设备的固件中(不要担心它们未连接到互联网 -> 没有安全问题)

问题是:

  • 是否有必须填充的浏览器功能列表?
  • 有人做过这种事吗?
  • 是否有可以完成这项工作的现有 Polyfill 列表? core-js polyfill 足够了吗?
angular polyfills
1个回答
0
投票

是否有必须填充的浏览器功能列表?

是的,但这取决于您的目标浏览器。听起来您有一个明确定义的浏览器列表,因此您应该能够通过以下方式找到所需的填充列表:

有人已经这样做了吗?

是的,但问题往往像您的问题一样,非常特定于具体情况。没有人构建具有复杂功能并针对 100% 浏览器的角度应用程序。

一般来说,捆绑工具通常允许您指定目标浏览器,尽管您所定位的确切浏览器可能无法用作捆绑工具的目标浏览器选项。

由于您使用的是 Angular,因此您可以在应用程序根目录中的

.browserslistrc
中指定要定位的浏览器。例如,如果您的目标是 IE 11,则可能如下所示:

>0.25%
IE 11

是否有可以完成这项工作的现有 Polyfill 列表? core-js polyfill 足够了吗?

这又取决于你需要填充什么。如果它是一个简单的应用程序,core-js 可能就足够了 - 最好的方法是使用 core-js 并看看它是否有效。如果没有,你应该总能找到一个可以为你填充的包。确保避免需要填充的不必要功能(例如,角度动画可能需要针对您的目标浏览器进行填充。不使用动画可能会更容易)。

确保针对您的目标浏览器将部署包装在 e2e 测试中

今后,您将需要为目标浏览器添加 e2e 测试来完成部署过程。

© www.soinside.com 2019 - 2024. All rights reserved.