У меня есть приложение Google Home на основе Node.JS (версия 8.6), которое использует клиентскую библиотеку Actions on Google Javascript. Он собрался и работает нормально уже несколько дней. Я добавил несколько пакетов в проект, и вдруг я начинаю получать следующую фатальную ошибку в клиентской библиотеке Actions on Google Javascript, несмотря на то, что код в этой библиотеке не был тронут:
/**
* The Actions on Google client library.
* https://developers.google.com/actions/
*/
'use strict';
const AssistantApp = require('./assistant-app');
^^^^^
SyntaxError: Use of const in strict mode.
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/roschler/Documents/GitHub/YourMD/google-assistant/morse-integration/routes/fulfillment.js:16:21)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
Я никогда не получал эту ошибку раньше. Ниже приведен мой файл package.json:
{
"name": "test",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"aws-sdk": "^2.3.17",
"actions-on-google": "^1.4.0",
"archiver": "^1.3.0",
"body-parser": "~1.13.3",
"bluebird": "^3.4.0",
"cookie-parser": "~1.3.5",
"config": "^1.21.0",
"debug": "~2.2.0",
"express": "~4.13.1",
"glob": "~7.0.3",
"http-status-codes": "~1.0.6",
"jade": "~1.11.0",
"jsonfile": "~2.2.3",
"marked": "^0.3.5",
"morgan": "~1.6.1",
"pg": "^6.1.4",
"redis": "^2.6.1",
"request": "^2.72.0",
"scribe-js": "~2.0.4",
"serve-favicon": "~2.3.0",
"showdown": "^1.7.1",
"simple-spinner": "0.0.5",
"ssl-root-cas": "~1.2.2",
"underscore": "^1.8.3"
}
}
Кто-нибудь знает, почему это происходит и что я могу сделать, чтобы это исправить? Я попытался обновить свою версию Node.JS в соответствии с принятым ответом в сообщении о переполнении стека ниже относительно аналогичной ошибки, но это не помогло:
SyntaxError: использование const в строгом режиме?
Я все еще получаю сообщение об ошибке.
ОБНОВЛЕНИЕ: я забыл, что также обновился с Node 7.2 до 8.6. Я считаю, что теперь это то, что вызывает мои проблемы. Я занимаюсь полной очисткой Node.js, а затем устанавливаю nvm, чтобы протестировать версии.
const
. Возможно, что-то пошло не так с вашим процессом обновления. Вероятно, также стоит исключить какую-то другую причину, создав простой тестовый файл, в котором больше ничего нет, кроме этой проблемы. - person jfriend00   schedule 14.10.2017