我正在构建一个使用React应用程序的库。由于它将在反应生态系统上工作,某些特性将因环境而异。
我正在寻找一种方法来检测当前的环境是否是一个ReactJS应用程序(例如,创建-反应-应用程序),或者它是否使用NextJS对其进行SSR,或者它是否是一个移动应用程序RAP原住民。
它是否存在一种javascript方式来了解这些信息?
谢谢您:)
发布于 2020-05-04 19:01:31
要检查代码是否运行在react本机中,可以使用navigator.product。将本机返回navigator.product反应为"ReactNative“。这是与正在执行的建议的链接。https://github.com/facebook/react-native/issues/1331
要检查代码是否在NextJS或浏览器中运行,可以检查是否定义了window对象或document对象。在nodeJS下,window是未定义的。
React本机已经定义了常见的浏览器对象,如窗口和文档,以确保目标浏览器工作的库。下面是到代码的链接。https://github.com/facebook/react-native/blob/master/Libraries/Core/InitializeCore.js
https://stackoverflow.com/questions/61406096
复制相似问题