сбой webpack encore при импорте перечисления из node_modules

#javascript #typescript #vue.js #enums #webpack-encore

Вопрос:

Я пытаюсь использовать некоторые перечисления из библиотеки, которую я создал в другом проекте. Библиотека выполнена с использованием Vue и машинописного текста, в комплекте с накопительным пакетом, проект выполнен Synfony, а передняя часть также с использованием Vue и машинописного текста, построенного с помощью Webpack Encore.

Библиотека зависит от моего проекта, поэтому я пытаюсь импортировать перечисление следующим образом: import { MyEnum } from 'myLibrary/src/enum/MyEnum';

И перечисление выглядит так

 // node_modules/myLibrary/src/enum/MyEnum.ts  export enum MyEnum {  One = 'one',  Two = 'two',  Three = 'three' }  

Но когда я строю, я получил эту ошибку (с помощью веб-пакета Symfony на бис):

 ERROR Failed to compile with 1 errors 4:37:05 PM  Error loading ./node_modules/myLibrary/src/enum/MyEnum.ts   FIX To process TypeScript files:  1. Add Encore.enableTypeScriptLoader() to your webpack.config.js file.  

Я, очевидно, уже добавил enableTypeScriptLoader() в webpack.config.js, и я не знаю, как это решить.

Если я создам один и тот же файл перечисления в свой проект и импортирую его, он будет работать, но я должен хранить его в своей библиотеке, и я не хочу дублировать код. И я импортирую интерфейсы из той же библиотеки таким же образом, и это прекрасно работает.

Я пробовал вещи, которые не работают :

  • export const enum вроде как работает, но я получаю TS2475: 'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query. ошибку, и мне приходится повторно объявлять перечисление в другом объекте, чтобы использовать его в своем шаблоне :/
  • export declare enum но все равно получаю Add Encore.enableTypeScriptLoader() ошибку

Есть идеи, как это решить?

Редактировать

У меня есть еще одно сообщение об ошибке в моем браузере, которое добавляет некоторую информацию:

 Module parse failed: Unexpected token (4:7) You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders gt; export enum MyEnum { | One = 'one', | Two = 'two'  

Я также тестирую импорт того же перечисления из той же библиотеки в новом проекте, созданном с помощью Vue Cli, и у меня нет ошибок. Я почти уверен, что проблема возникла из-за выхода Webpack на бис.