Отсутствует "translate.js" в Google Cloud Translate API - PullRequest
2 голосов
/ 18 октября 2019

Я решил использовать API Google Cloud Translation для своего проекта. Все казалось хорошо, пока я не попытался запустить их сценарий. Он всегда говорит, что мне нужно «Использовать require ([])».

The error

Сразу после добавления квадратных скобок в аргументе моего запроса, он говоритЯ должен удалить фигурные скобки вокруг переменной Translate, потому что это не конструктор (хотя в скрипте Google это кодируется SO). Я делаю это, и я получаю еще больше ошибок. Вот так: enter image description here

Я не знаю, как это исправить. Целые дни провел, пытаясь выяснить, в чем дело, но с тех пор не добился никакого прогресса. Возможно, мне не хватает файла translate.js, так как это указывает на 2-й рисунок. Но я сделал все, как сказано в Краткое руководство по началу работы на официальном сайте Google, и следующая команда (npm install @ google-cloud / translate) действительно загружает много пакетов, но ничего не делает справедливо, то естьне загружает любой translate.js или что-то в этом роде. Исходный код ниже:

index.html:

 <html>
    <head>
    <script src="https://requirejs.org/docs/release/2.3.6/minified/require.js"></script>

        <script src="test.js"></script>
    </head>

    <body><script>main()</script></body>
    </html>

test.js:

async function main(
  projectId = 'text-analyzer-1571113830391' // Your GCP Project Id
) {

  // [START translate_quickstart]
  // Imports the Google Cloud client library
  const Translate = require(['@google-cloud/translate']);

  // Instantiates a client
  const translate = new Translate({projectId});

  // The text to translate
  const text = 'Hello, world!';

  // The target language
  const target = 'ru';

  // Translates some text into Russian
  const [translation] = await translate.translate(text, target);
  console.log(`Text: ${text}`);
  console.log(`Translation: ${translation}`);
}
// [END translate_quickstart]

1 Ответ

0 голосов
/ 18 октября 2019

Благодаря @Kolban я вспомнил, что Node.js - это серверный API, и он не может выполнять какую-либо логику в браузере. Для этого вам нужно использовать какой-либо сторонний продукт, такой как Webpack, для преобразования вашего кода или, в любом случае, делать вызовы REST через Ajax. Еще раз спасибо, Колбан!

Тема может быть закрыта.

...