пытается использовать библиотеку машинописи в приложении javascript express - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь использовать библиотеку машинописи, например this , для существующего express nodejs приложения. но это не работает. когда я импортирую библиотечные функции, он выдает ошибки, такие как Cannot read свойство 'constructor' undefined.

Я также компилирую ts-файлы в js -файлы. Есть ли другой способ использовать машинописный текст в существующем node js приложении?

здесь стек ошибок

"stack": "TypeError: Cannot read property 'constructor' of undefined\n    at MetadataStorage.getAncestors (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/metadata/MetadataStorage.js:199:73)\n    at MetadataStorage.getMetadata (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/metadata/MetadataStorage.js:146:36)\n    at MetadataStorage.getExposedMetadatas (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/metadata/MetadataStorage.js:91:21)\n    at MetadataStorage.getExposedProperties (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/metadata/MetadataStorage.js:97:21)\n    at TransformOperationExecutor.getKeys (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/TransformOperationExecutor.js:328:70)\n    at TransformOperationExecutor.transform (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/TransformOperationExecutor.js:110:29)\n    at ClassTransformer.plainToClass (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/ClassTransformer.js:17:25)\n    at plainToClass (/Users/saurabhkumar/platform/rest-api-service/node_modules/class-transformer/index.js:20:29)\n    at Object.<anonymous> (/Users/saurabhkumar/platform/rest-api-service/build/src/api/controllers/source.controller.js:67:22)\n    at Generator.next (<anonymous>)\n    at /Users/saurabhkumar/platform/rest-api-service/build/src/api/controllers/source.controller.js:7:71\n    at new Promise (/Users/saurabhkumar/platform/rest-api-service/node_modules/es6-shim/es6-shim.js:2393:11)\n    at __awaiter (/Users/saurabhkumar/platform/rest-api-service/build/src/api/controllers/source.controller.js:3:12)\n    at exports.create (/Users/saurabhkumar/platform/rest-api-service/build/src/api/controllers/source.controller.js:58:38)\n    at Layer.handle [as handle_request] (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/layer.js:95:5)\n    at next (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/route.js:137:13)\n    at /Users/saurabhkumar/platform/rest-api-service/build/src/api/controllers/auth.controller.js:12:13\n    at Layer.handle [as handle_request] (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/layer.js:95:5)\n    at next (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/route.js:137:13)\n    at Route.dispatch (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/route.js:112:3)\n    at Layer.handle [as handle_request] (/Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/layer.js:95:5)\n    at /Users/saurabhkumar/platform/rest-api-service/node_modules/express/lib/router/index.js:281:22"

1 Ответ

0 голосов
/ 05 февраля 2020

Если вам просто нужна машинопись здесь и далее, но вы не хотите придерживаться уже написанных js файлов, вы можете просто оставить ее в виде js файлов ...

Убедитесь, что вы tsconfig настроен на allowJs: true или просто запустите ts c с этой опцией.

Проверьте опцию разрешения Js, в первую очередь опции компилятора: https://www.typescriptlang.org/docs/handbook/compiler-options.html#compiler -опции

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...