好吧,我正在尝试像这样从require
module
动态地node_modules
:
export function tryRequire(path: string): any {
try {
//TODO :: find a better way
//for testing bypass it
if (process.env.NODE_ENV === "test") return {};
return require(`${path}`).default;
} catch (err) {
return null;
}
}
从TypeScript
编译为JavaScript
的方式为:
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.tryRequire = tryRequire;
function tryRequire(path) {
try {
//TODO :: find a better way
//for testing bypass it
if (process.env.NODE_ENV === "test") return {};
return require("".concat(path));
} catch (err) {
return null;
}
}
现在,当我尝试在Javascript
中使用它时,请说:
tryRequire("react-native")
它不起作用,这里缺少什么吗?
编辑:如果我编辑了编译后的代码,然后将return require("".concat(path));
替换为`return require(“ react-native”);,这是有趣的。 ,就可以了!