Node js асинхрон

Поддержка
  • Подскажите, пытаюсь справится с функцией перевода, но не работает
    вот код с справочника

    const translate = require('google-translate-api');
    
    translate('Ik spreek Engels', {to: 'en'}).then(res => {
        console.log(res.text);
        //=> I speak English
        console.log(res.from.language.iso);
        //=> nl
    }).catch(err => {
        console.error(err);
    });
    

    я так понимаю, что проблема с асинхроном так как лог выдается пустой да и функция закрывается за секунду

    const translate = require('google-translate-api');
    
    await (new Promise((resolve, reject) => {
    translate('Ik spreek Engels', {to: 'en'}).then(res => {
        console.log(res.text);
        //=> I speak English
        console.log(res.from.language.iso);
        resolve()
    }).catch(err => {
        console.error(err);
    });
    }));
    

    пробывал так, но по всей видимости неправильно использу асинхрон, функция долго грузит, а потом выбивает с ошибкой таймаута

  • @iptips,

    const translate = require('google-translate-api');
    
    var res = await translate('Ik spreek Engels', {to: 'en'});
    
    console.log(res.text);
    //=> I speak English
    
    console.log(res.from.language.iso);
     //=> nl
    
    
  • @GhostZ said in Node js асинхрон:

    const translate = require('google-translate-api');

    await (new Promise((resolve, reject) => {
    translate('Ik spreek Engels', {to: 'en'}).then(res => {
    console.log(res.text);
    //=> I speak English
    console.log(res.from.language.iso);
    //=> nl
    resolve()
    }).catch(err => {
    console.log(err.code);
    resolve()
    });
    }));

    спасибо, работает но оказалось что модуль устарел и не работает с гугл

  • 0 Votes
    6 Posts
    632 Views
  • 0 Votes
    20 Posts
    2559 Views
  • 0 Votes
    2 Posts
    551 Views
  • 0 Votes
    5 Posts
    1102 Views
  • 1 Votes
    1 Posts
    756 Views