Как использовать клиентскую библиотеку 'dialogflow' с Typescript? - PullRequest
2 голосов
/ 02 февраля 2020

У меня есть рабочая кодовая база Typescript, работающая на стороне сервера в NodeJS v10.18.0, и я пытаюсь интегрировать в нее клиентскую библиотеку dialogflow .

Обратите внимание, что это НЕ API-интерфейс webhook / выполнения диалогового потока. Это клиентский API.

Но я не могу заставить 'dialogflow' импортировать 'с помощью Typescript, в любом случае, хотя @ types / dialogflow утверждает, что пакет набран правильно уже.

Базовый c контрольный пример:

Запустите где-нибудь пустую папку, затем:

$ npm init     # Accept all defaults
$ tsc --init
$ npm install --save dialogflow @types/node

Теперь создайте index.ts содержащий:

import * as df from 'dialogflow'

Вы можете попробовать другие стили импорта. Все они сталкиваются с одной и той же проблемой.

Затем попробуйте:

$ tsc

Жалуется на:

index.ts:1:29 - error TS7016: Could not find a declaration file for module 'dialogflow'.

Что дает? Что я делаю не так?

(я не эксперт по типизации модулей с помощью Typescript)

Типизирован ли диалоговый поток для Typescript или нет?

1 Ответ

0 голосов
/ 07 апреля 2020

В настоящее время единственным вариантом является использование устаревшей версии.

Установка

npm i -D @types/dialogflow@0.11.0

Код

import * as df from 'dialogflow';
const config = { ... };
const sessionClient = new df.SessionsClient(config);

Ссылка на этот комментарий . Надеюсь, что официальная библиотека будет исправлена ​​в ближайшее время.

Обратите внимание, что следующий параметр не работает, так как он не имеет правильных определений типов.

import * as dialogflow from 'dialogflow/protos/protos'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...