繁花如伊
2023-02-24 15:20:11
在我的 Vue.js 應用程序中,我有以下內容package.json "browserslist": [ "> 1%", "last 2 versions" ]我相信 Babel 使用它來自定義生成的 JavaScript(其他構建工具也可能使用它)。如果用戶嘗試在不受支持的瀏覽器中加載應用程序,我是否可以利用此受支持瀏覽器列表來顯示錯誤?我可以編寫一些 JavaScript 來檢測用戶代理并在瀏覽器不受支持時顯示錯誤,但這可能需要我在 2 個地方維護支持的瀏覽器列表,我寧愿避免這樣做。
1 回答

蝴蝶刀刀
TA貢獻1801條經驗 獲得超8個贊
首先,我想提一下,這樣做可能不是一個好主意。瀏覽器的更新速度非??欤脩艨赡苡捎谀承┕菊叩仍驘o法經常更新。更好的方法是使用功能檢測,檢查瀏覽器是否支持特定功能。這可能需要做更多的工作,但給出了一個實際的理由來告訴人們他們的瀏覽器不受支持。
您可以使用browserslist-useragent-regexp包從您的 browserslist 配置生成正則表達式。您可以將此正則表達式寫入文件并使用它來測試navigator.userAgent
您的配置是否支持。browserslist-useragent-regexp 存儲庫中的 README 文件包含一個示例設置。
另一種選擇是使用browserslist-useragent包,你可以給這個工具一個 user-agent 和一個 browserslist 配置來檢查特定的 user-agent 是否匹配 browserslist 配置。此選項可能需要更多研究,因為它似乎首先針對 Node.js 應用程序。
此選項似乎已被放棄,并且有一些不再維護的依賴項,因此請自行承擔風險。如果您已經在項目中使用 Webpack 4,也可以使用obsolete-webpack-plugin ,它需要較少的設置。它可以與它一起使用HtmlWebpackPlugin
并創建一個新塊,當不支持瀏覽器時,它將在您的頁面中插入一個 HTML 片段。
添加回答
舉報
0/150
提交
取消