reactjs 如何检测设备是iOS、Android还是桌面

krcsximq  于 2022-12-03  发布在  React
关注(0)|答案(2)|浏览(612)

我需要显示不同的应用程序链接取决于用户的操作系统。如IOS,Android或两者,如果用户是在桌面上打开页面。我正在使用React和Next.js我试图使用导航器。userAgent没有运气。
这将是完美的实现如下代码:

import React from "react";
import { AppDownload as AppDownloadProps } from "xxx";

export default function DownloadApp({
  appDownload,
}: AppDownloadProps): JSX.Element {
  return (
        <div>
          {isIos && <a href={appDownload?.ios.url}></a>}
          {isAndroid && <a href={appDownload?.android.url}></a>}
          {isDesktop && <a href={appDownload?.desktop.url}></a>}
        </div>
  );
}
5vf7fwbs

5vf7fwbs1#

Detect MacOS, iOS, Windows, Android and Linux OS with JS可能重复。
您可以使用window.navigator,但需要解析结果。

u91tlkcl

u91tlkcl2#

您可以使用navigator.userAgent来检测浏览器中的用户代理,还有很多其他选项可用于获取代理信息。

console.log("agent is:", window?.navigator?.userAgent)

console.log("platform is: ", window?.navigator?.platform)

console.log("user agent data: ", window?.navigator?.userAgentData)

相关问题