[英]Detect if using nextJS, react or react-native
我正在構建一個使用 React 應用程序的庫。 由於它將在 React 生態系統中運行,因此某些功能將根據環境以不同方式運行。
我正在尋找一種方法來檢測當前環境是否是 ReactJS 應用程序(例如使用 create-react-app 制作),或者它是否在其上使用 NextJS 作為 SSR,或者它是否是使用 React Native 制作的移動應用程序.
是否存在了解此信息的 javascript 方式?
謝謝:)
要檢查您的代碼是否在 react native 中運行,您可以使用 navigator.product。 React Native 將 navigator.product 作為“ReactNative”返回。 這是已實施的提案的鏈接。 https://github.com/facebook/react-native/issues/1331
要檢查您的代碼是否在 NextJS 或瀏覽器中運行,您可以檢查window
object 或document
object 是否已定義。 在 nodeJS 下, window
是未定義的。
React Native 定義了常見的瀏覽器對象,如 window 和文檔,以確保目標瀏覽器的庫工作。 這是代碼的鏈接。 https://github.com/facebook/react-native/blob/master/Libraries/Core/InitializeCore.js
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.