Не удается импортировать функцию из файла tsx

#javascript #reactjs #typescript #webpack #import

Вопрос:

Я использую react typescript webpack.

Я пытаюсь импортировать функцию drawOnCanvasHelper , содержащуюся в пакете react-financial-charts , который я правильно установил npm. Функция экспортируется из файла: https://github.com/reactivemarkets/react-financial-charts/blob/f5a2ab4b537652770c4ff8a1805678fb149861e9/packages/series/src/StackedBarSeries.tsx

Я пытался импортировать его двумя разными способами:

 import { drawOnCanvasHelper } from "@react-financial-charts/series";
 
 import { drawOnCanvasHelper } from "react-financial-charts";
 

Однако оба они генерируют одно и то же сообщение об ошибке:

 TS2305: Module '"react-financial-charts"' has no exported member 'drawOnCanvasHelper'.
 
 TS2305: Module '"@react-financial-charts/series"' has no exported member 'drawOnCanvasHelper'.
 

Я не понимаю этого сообщения об ошибке, так как файл внутри этого пакета определенно экспортирует эту функцию. Итак, как я могу правильно импортировать эту функцию для использования в моем проекте?

Комментарии:

1. import drawOnCanvasHelper from "@react-financial-charts/series"; используйте вот так

2. @MonzoorTamal Нет, это не экспорт по умолчанию, так что это не сработает. Ответ, который я принял, является правильным — это просто невозможно сделать.

Ответ №1:

Похоже, что в /packages/series/src/index.ts файле они экспортируют только StackedBarSeries и StackedBarSeriesProps из StackedBarSeries компонента

Согласно ссылке:

 // index.ts
export * from "./AlternateDataSeries";
export * from "./AlternatingFillAreaSeries";
export * from "./AreaOnlySeries";
export * from "./AreaSeries";
export * from "./markers";
export * from "./LineSeries";
export * from "./CandlestickSeries";
export * from "./OHLCSeries";
export * from "./BarSeries";
export { StackedBarSeries, StackedBarSeriesProps } from "./StackedBarSeries";
export * from "./GroupedBarSeries";
export * from "./KagiSeries";
export * from "./PointAndFigureSeries";
export * from "./RenkoSeries";
export * from "./MACDSeries";
export * from "./BollingerSeries";
export * from "./RSISeries";
export * from "./StochasticSeries";
export * from "./ElderRaySeries";
export * from "./VolumeProfileSeries";
export * from "./ScatterSeries";
export * from "./StraightLine";
export * from "./SARSeries";
 

Поэтому вы не можете получить эту drawOnCanvasHelper функцию. Хотя они экспортируют функцию, она может использоваться только для внутренних разработчиков — конечные пользователи получают доступ только к StackedBarSeries классу и StackedBarSeriesProps интерфейсу

Надеюсь, я говорю разумно