У меня есть библиотека, которая требует:
- rnkata. js при работе в собственном реагировании
- webkata. js при работе в браузере
- nodekata. js при работе на узле
Этот хак работает нормально, пока я нацелен только на node / web:
if (getEnv() == "node") {
eval('require')('nodekata')
} else {
require('webkata')
}
Но как только я начал ориентироваться на мобильные устройства , сборщик метро пожаловался бы, что "webkata недоступна":
if (getEnv() == "node") {
eval('require')('nodekata')
} else if (getEnv() == "mobile") {
require('rnkata')
} else {
require('webkata')
}
Очевидно, я не могу использовать тот же метод eval - иначе я сломаю либо webpack, либо RN. Есть ли документация о том, как справиться с этой ситуацией? IE: как я могу подавить объединение или интерпретацию вызова 'require' платформой.
Есть ли функция «подавлять по имени модуля»? Или каким-то другим способом получить модуль c для конкретной платформы?