【问题标题】:String is not a function error on single Heroku environment字符串不是单个 Heroku 环境中的函数错误
【发布时间】:2015-06-02 23:39:15
【问题描述】:

我有一个问题,特别是在使用他们的 Node 中间件进行 Algolia 搜索时,会出现错误 [TypeError: string is not a function]

我有 3 个相同的环境,在我的本地机器上重新创建所有环境的 master 分支不会重现错误。其他环境没有错误。

我已经尝试删除并重新安装 npm 中间件,看看我是否忘记了--save somehthing 并比较了环境变量。我还能如何解决这个问题?

【问题讨论】:

  • 您可以准确找出导致错误的代码行并检查它周围的上下文,看看您是否可以找出某些函数的哪些错误参数导致了此错误。而且,您可以在有问题的行上设置断点并检查调用堆栈以查看错误值是如何到达它的位置的。
  • @jfriend00 我怎样才能确切地看到哪一行是问题所在?目前,我想在这种情况下我只是在做console.log
  • 错误信息本身通常表示行号和文件名。
  • 它只说2015-05-21T23:15:57.743467+00:00 app[web.1]: [TypeError: string is not a function]heroku 路由器后面的行
  • 如果不查看环境和代码并能够进行故障排除,我们在这里做不了太多事情。您将不得不确切地弄清楚错误来自什么代码。在对您的项目一无所知的情况下,这里的任何人都很难建议下一步要采取什么步骤。

标签: node.js heroku npm web-deployment


【解决方案1】:

我仍然不确定这个问题的确切原因,但是从 Algolia 搜索 JS 版本 1.0 切换到 3.0 似乎已经解决了这个问题。 Algolia做了一个新模块,所以我不得不从NPM包algolia-search改成algoliasearch

我推测它与 SSL 有关,因为第 3 个环境(它不工作的地方)是唯一一个使用 SSL (HTTPS) 的环境。除此之外,我想不出为什么它在任何地方都能工作,但不管版本如何。无论如何,版本 3.0 中的新语法也好多了。感谢 GitHub 上回答此问题的 Algolia 人。

【讨论】:

    猜你喜欢
    • 2019-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-29
    相关资源
    最近更新 更多