Не удалось найти файл объявления для модуля при импорте модуля узла с помощью ES6 - PullRequest
0 голосов
/ 19 декабря 2018

Я настроил loopback 4 и пытаюсь написать новый контроллер для моих платежей через API Braintree.Я установил модуль Braintree npm и использую

import {braintree} from 'braintree';

для импорта в контроллер и использования в конечной точке.Но он выдает мне следующую ошибку:

*src/controllers/braintree.controller.ts:23:25 - error TS7016: Could not find a declaration file for module 'braintree'. '/home/oem/Learning/learn-loopback/my-todo-app/node_modules/braintree/index.js' implicitly has an 'any' type.
Try `npm install @types/braintree` if it exists or add a new declaration (.d.ts) file containing `declare module 'braintree';*`

Когда я пытаюсь импортировать es5, он работает нормально.

Не уверен, как это исправить.

1 Ответ

0 голосов
/ 20 декабря 2018

Тип braintree, похоже, еще не существует.Итак, здесь у вас есть 2 возможности:

  • Вы создаете файл типа, как предложено в ошибке, но вам нужно хорошо знать библиотеку braintree.
  • Заменить import {braintree} from 'braintree';с const braintree = require('braintree');, но у вас не будет доступа ко всей магии машинописи, поэтому будьте осторожны при работе с этой библиотекой.
...