如何根据支持列表检查当前浏览器

How to check current browser against the list of supported ones

我们有一个我们测试 web 应用程序的浏览器列表。如果用户的浏览器不受支持或测试不能很好地与我们的应用程序一起工作,我的任务是通知用户。

我们在项目中有一个 browserslist 配置,我正在寻找一种方法来根据列表测试当前浏览器。 我试过 browserlist-useragent 但我们不能用 webpack 编译它,因为它使用了 netfstls 和其他我们不想使用的本地节点模块包含在我们的捆绑包中。

有没有更好的方法避免在许多不同的地方复制受支持的浏览器列表,而只使用已经存在的浏览器列表配置来检测用户是否使用受支持的浏览器?

我会考虑在使用browserslist的项目中使用这个"utility"包https://github.com/browserslist/browserslist-useragent-regexp,然后使用这个包建议的脚本生成的文件然后在任何地方使用别的。 实际上,您想要的只是生成文件中的正则表达式。这可以放在浏览器检测所需的任何客户端或服务器代码中。我把我的放在一些经典的 asp.

另请注意,在 Windows PC 上,提供的说明不会生成包含 RegEx 的文件。相反,您需要 运行 npx browserslist-useragent-regexp --allowHigherVersions 在控制台上显示合适的 RegEx,然后在需要的地方添加它。