У меня есть файл в каталоге потокового типа с некоторыми общими объявлениями типа, например:
common-types.js
// @flow
declare module 'common-types' {
declare export type RequestState = {
setLoading: () => void,
setFinished: () => void,
setError: (error: AxiosFailure) => void,
reset: () => void,
status: LoadingStatus,
error: AxiosFailure | void,
};
declare export type LoadingStatus = '' | 'loading' | 'finished';
declare export type ErrorObject = { [key: string]: string | string[] | Error };
declare export type AxiosFailure = {
status: number,
data: ErrorObject,
}
}
Теперь импортирую в файлы вот так:
import type { RequestState } from 'common-types';
но я получаю ошибки импорта eslint-plugin-import о отсутствующем расширении файла, а также не могу разрешить путь к модулю 'common-types'
Как мне с этим справиться?
common-types
на самом деле модуль npm? Похоже, было бы проще сделать его локальным файлом, а затем сделать./common-types
, если вы на самом деле не объявляете типы реального модуля npm. - person loganfsmyth   schedule 31.08.2017../../../../../common-types
. Если я сделаю псевдоним webpack, снова поток показывает ошибки о том, что модуль не найден. - person Tomasz Mularczyk   schedule 31.08.2017commons
, я должен игнорировать его в потоке, набранномdeclare module 'common' { declare module .exports: any; }
, но тогда, если бы я попытался экспортировать типы оттуда, я бы не получил ошибок при экспорте несуществующих типов. , потому что это игнорируется. - person Tomasz Mularczyk   schedule 31.08.2017