Я создал пустой проект react-native
, но с использованием type-script (например, react-native init MyApp --template typescript
), затем установил в этот пакет react-navigation-tabs
, и проблема, с которой я сталкиваюсь:
TS7016: Could not find a declaration file for module 'react-navigation-tabs'.
'.../node_modules/react-navigation-tabs/src/index.js' implicitly has an 'any' type.
Try `npm install @types/react-navigation-tabs` if it exists
or add a new declaration (.d.ts) file containing `declare module 'react-navigation-tabs';`
Я тоже попробовал npm install --save-dev @types/react-navigation-tabs
, и поскольку такого пакета не было,
пока я сделал обходной путь, как предложено в другом посте .
Но, возвращаясь к вопросу в названии, это действительно больно, я имею в виду информацию, которую IDE
должен обеспечить автозаполнение, есть в файле node_modules/react-navigation-tabs/src/index.js
, например:
/* @flow */
/* eslint-disable import/no-commonjs */
module.exports = {
/**
* Navigators
*/
get createBottomTabNavigator() {
return require('./navigators/createBottomTabNavigator').default;
},
get createMaterialTopTabNavigator() {
return require('./navigators/createMaterialTopTabNavigator').default;
},
/**
* Views
*/
get BottomTabBar() {
return require('./views/BottomTabBar').default;
},
get MaterialTopTabBar() {
return require('./views/MaterialTopTabBar').default;
},
/**
* Utils
*/
get createTabNavigator() {
return require('./utils/createTabNavigator').default;
},
};
Как мы можем заставить IDE (например, VS Code
) показывать автозаполнение, используя данные, которые можно найти в существующем файле node_modules/react-navigation-tabs/src/index.js
?
Редактировать: Также создан запрос / вопрос на github .