#typescript #react-native #ts-node
#typescript #реагирующий -собственный #ts-узел
Вопрос:
Я создал небольшой инструмент CLI для автоматизации некоторых процессов в моем проекте React Native. Недавно мне пришлось обновить RN
from 0.61.4
to 0.63.2
для решения некоторых проблем iOS. После этого обновления CLI больше не работает.
Ошибки:
yarn ts-node -r tsconfig-paths/register ./scripts/check
import typeof AccessibilityInfo from './Libraries/Components/AccessibilityInfo/AccessibilityInfo';
^^^^^^
SyntaxError: Cannot use import statement outside a module
и
yarn ts-node -r esm -r tsconfig-paths/register ./scripts/check
import typeof AccessibilityInfo from './Libraries/Components/AccessibilityInfo/AccessibilityInfo';
^
SyntaxError: Invalid or unexpected token
Я перепробовал кучу решений, но чувствую, что я исправляю A и нарушаю B, и наоборот.
Важно отметить, что некоторые файлы из этого CLI совместно используются с приложением RN, и приложение RN работает нормально.
Я считаю, что мне нужно очистить flow
типизацию RN
, но @babel/plugin-transform-flow-strip-types
это не помогло
Комментарии:
1. AccessibilityInfo находится внутри
React Native
кода, поэтому внутриnode_modules
2.
import typeof
недопустимый код,import type
является ли целью импортировать экспорт типа по умолчанию или вы пытаетесь захватить тип модуля?3. @TadhgMcDonald-Jensen Я считаю, что ОС «import typeof» из типов потоков, вы можете проверить файл по адресу github.com/facebook/react-native/blob/master/index.js
4. Этот файл не существует в версии 0.61 , поэтому очевидно, что архитектура изменилась.
ts-node
определенно, у него нет никаких возможностей для работы с потоковым вводом в файле js, RN полагается на Babel, чтобы справиться с этим, поэтому я немного удивлен, что это сработало в предыдущей версии…5. @TadhgMcDonald-Дженсен есть какие-нибудь предложения о том, как заставить эту команду узла работать с typescript и прочим? Я пытался
@babel/node
, но тоже потерпел неудачу по тем же причинам…