firebase部署节点“警告:访问不存在的属性”

时间:2020-08-19 16:53:30

标签: node.js firebase firebase-cli

当我运行firebase deploy时,我收到以下节点警告:

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

我尝试了firebase deploy --only hostingfirebase 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: []
}

这似乎表明问题不在我的代码中。

我尝试了Node v14.8.0(最新版本),v14.1.0和v12.8.5。

运行firebase tools --version,我得到6.3.1。最新版本是8.7.0。我每周至少使用npm-check更新我的所有npm软件包。我运行了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.jsonpackage-lock.json说8.7.0。

1 个答案:

答案 0 :(得分:3)

已修复!问题是firebase tools尽管已定期更新并安装了8.7.0,但仍停留在6.3.1上。我跑了

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无效。