узел развертывания firebase «Предупреждение: доступ к несуществующему свойству»

#node.js #firebase #firebase-cli

#node.js #firebase #firebase-cli

Вопрос:

Когда я запускаю firebase deploy , я получаю это предупреждение узла:

 (node:14802) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
  

Я попробовал firebase deploy --only hosting и firebase deploy --only functions и получил то же сообщение об ошибке, так что это не мой код.

Я запустил node --trace-warnings ... и получил:

 internal/modules/cjs/loader.js:1083
  throw err;
  ^

Error: Cannot find module '/Users'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1080:15)
    at Function.Module._load (internal/modules/cjs/loader.js:923:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

  

Похоже, это говорит о том, что проблема не в моем коде.

Я пробовал узел v14.8.0 (последнюю версию), v14.1.0 и v12.8.5.

При запуске firebase tools --version я получаю версию 6.3.1. Последняя версия 8.7.0. Я обновляю все свои пакеты npm не реже одного раза в неделю с помощью npm-check . Я запустил, npm i firebase-tools и он говорит, что он установил 8.7.0, но при запуске firebase tools --version я все еще вижу 6.3.1. Я также запускал npm install -g firebase-tools , снова он остается на 6.3.1. Как мне переключиться с 6.3.1 на 8.7.0?

package.json и package-lock.json скажем, 8.7.0.

Комментарии:

1. Если у вас есть информация, которую нужно добавить к вашему вопросу, отредактируйте ее, используя ссылку «Редактировать», и добавьте информацию к самому вопросу вместо добавления комментариев.

Ответ №1:

Исправлено! Проблема заключалась в том, что firebase tools застрял на версии 6.3.1, несмотря на регулярное обновление, с установленным 8.7.0. Я запустил

 curl -sL firebase.tools | upgrade=true bash
  

и теперь firebase tools --version написано 8.7.0.

firebase deploy --only hosting работает, но чтобы начать firebase deploy --only functions работать, мне пришлось зайти в functions папку, открыть package.json и изменить

 "engines": {
    "node": "8"
  },
  

Для

 "engines": {
    "node": "10"
  },
  

Я понятия не имею, почему регулярное обновление firebase tools не сработало.

Комментарии:

1. Это исправило это для меня!