Проблема создания экземпляра класса из модуля node-js

#javascript #node.js #api #rest #class

Вопрос:

Я пытаюсь использовать узел-модуль hitbtc-api. Однако, я не совсем в состоянии правильно создать экземпляр класса с помощью его конструктора. Пример на его сайте говорит, что я должен сделать это так:

 const restClient = new HitBTC({ key, secret, isDemo: false });
 

Но я действительно не знаю, как передать туда ключ и секрет. Я уже пробовал это:

 const restClient = new HitBTC({ "123456123456123456", "123456123456123456", isDemo: false });
 

В этом случае он возвращает сообщение об ошибке HitBTC is not a constructor .

Я понял, что конструктору требуется объект в качестве параметра, но после этого:

 const restClient = new HitBTC({ key: "123456123456123456", secret : "123456123456123456", isDemo: false });
 

и все еще получая ту же ошибку, я бросил попытки. Кто-нибудь встречался с созданием этого экземпляра раньше?

Мне немного любопытно, потому что я никогда не видел объекта без ключевых имен.

Ответ №1:

Это не проблема с тем, как вы вызываете, но это то, что вы вызываете, если вы регистрируете пространство имен, связанное с пакетом, это объект с методом, называемым по умолчанию, который предположительно является классом/конструктором, который вы ищете. Я не уверен, что это предназначено, хотя вы можете посмотреть на то же самое здесь

Ответ №2:

«Объект без ключевых имен» — это усовершенствование языка ES2015, и это очень просто.

По существу, вместо:

 const foo = 5;
const myObject = { foo: foo };
 

Теперь вы можете сказать:

 const foo = 5;
const myObject = { foo };
 

Вот и все 🙂 Когда пары ключ/значение нет, предполагается, что имя ключа-это имя переменной, а ее значение-значение переменной … но все по-прежнему играет по всем правилам Javascript, которые вы уже знаете.

Понимая это, ваша последняя попытка создать экземпляр вашего HitBTC объекта выглядит правильной … так что, возможно, что-то не так со значениями key или secret тем, что вы используете?