我已经尝试了几个小时来检查是否安装了 Node 包,以根据该情况调整我的 react native 库的行为。 我尝试了一个简单的 try/catch,但是,我不知道为什么,“无法解析模块”异常绝对没有被捕获。
try {
var Expo = require('expo');
} catch (e) {
console.log('Module is not installed');
console.error(e);
}
如何捕获 require()
“无法解析模块”异常,或者是否有其他方法来检查模块是否已安装?
谢谢!
最佳答案
Require
是同步的,因此错误处理必须遵循传统的 Javascript 错误处理模式,即使它看起来很奇怪:
try {
var Expo = require('./123/1234/154.js') //obviously not going to work
console.log("Installed successfully")
}
catch (e) {
console.log('ERROR: ')
console.log(e)
}
一般来说,您不应该在这种情况下使用 try catch,因为如果模块未正确安装/找到,您希望应用程序失败。
关于javascript - 如何捕获 `require()`异常来检查模块是否安装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45899050/