当前位置: 首页 > 知识库问答 >
问题:

在node.js中使用“自然”模块

鞠鸿雪
2023-03-14

我试图在节点中使用自然模块。JS。我编写了一个简单的程序,从浏览器中获取输入,并使用贝叶斯分类器对其进行分类。但是,在运行时,我得到以下错误:

/home/hadoop/cloud_major/testing/node_modules/natural/node_modules/apparatus/lib/apparatus/classifier/bayes_classifier.js:95
 classifier.__proto__ = BayesClassifier.prototype;
                      ^
TypeError: Cannot set property '__proto__' of undefined
at Function.restore (/home/hadoop/cloud_major/testing/node_modules/natural/node_modules/apparatus/lib/apparatus/classifier/bayes_classifier.js:95:27)
at restore (/home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/bayes_classifier.js:37:54)
at /home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/bayes_classifier.js:44:23
at /home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/classifier.js:114:13
at fs.readFile (fs.js:176:14)
at Object.oncomplete (fs.js:297:15)

现在,为了研究,我通过了一个在另一个节点上有类似问题的人的以下线索。JS模块:https://github.com/andris9/mailcomposer/issues/6 我遵循卸载和重新安装natural的解决方案,没有任何帮助。我还发现:http://tommytcchan.blogspot.in/2012_07_01_archive.html 我使用npm ls获得:

├─┬ natural@0.1.17
│ ├─┬ apparatus@0.0.6
│ │ └── sylvester@0.0.21
│ └── underscore@1.4.2

然后,我通过:查找安装的npm包的版本,并获得以下输出:

├─┬ natural@0.1.17
│ ├─┬ apparatus@0.0.6
│ │ └── sylvester@0.0.21
│ └── underscore@1.4.2

即。我认为安装的包的本地版本符合所需的依赖关系。是否有其他人使用此包并设法调试此错误?

非常感谢!

共有1个答案

宗冷勋
2023-03-14

只是一个猜测,但我认为这是由于不正确的初始化。

TypeError: Cannot set property '__proto__' of undefined

当我试图使用忘记先初始化的对象的属性时,我得到了类似的错误。从错误中猜测,您可能没有定义或初始化分类器,使其成为未定义的。您不能在未定义的上设置或使用属性。

下面是类似的帖子:

  1. JavaScript-不能设置属性的未定义和
  2. 无法设置属性...
 类似资料:
  • 问题内容: 我一直在学习有关node.js和模块的信息,似乎无法让Underscore库正常工作……似乎我第一次使用Underscore中的函数时,它会覆盖_对象,其结果为我的函数调用。有人知道发生了什么吗?例如,这是来自node.js REPL的会话: 当我自己制作Javascript文件并将其导入时,它们似乎工作正常。Underscore库也许有一些特别之处? 问题答案: Node REPL使

  • 在node的上下文中,我无法理解ES6模块。js。 假设我有一个简单的节点应用程序。它基于iisnode示例,但我在顶部添加了一个。 你好js: 这将导致在模块之外使用导入语句 但是如果我改名为hello。你好。mjs我收到以下错误: 对我来说似乎是个陷阱,有什么出路? (iisnode版本为0.2.26,节点版本为v13.8.0)

  • 问题内容: 因此,我正在编写一个小的辅助方法,使用将该数字转换为有效的货币格式()。在Chrome中使用时,一切正常,但是在Node.js中使用时,似乎完全坏了。 例: 如果在浏览器中运行此命令,它将显示。如果您在Node.js REPL或应用程序中运行此代码段,则它将作为字符串返回。 猜猜这是Node.js的错误吗?您可以在这里进行周围的工作吗? 问题答案: 基于此问题,似乎决定将具有国际化的n

  • 本文向大家介绍在 Node.js 中使用原生 ES 模块方法解析,包括了在 Node.js 中使用原生 ES 模块方法解析的使用技巧和注意事项,需要的朋友参考一下 从版本 8.5.0 开始,Node.js 开始支持原生 ES 模块,可以通过命令行选项打开该功能。新功能很大程度上得归功于 Bradley Farias。 1.演示 这个示例的代码目录结构如下: lib.mjs: main.mjs: 运

  • 问题内容: 我有以下目录结构: 我尝试在从server.js导出的app.js中调用函数,我这样做: 但是得到错误: 我如何正确包含它? 谢谢。 问题答案: 该路径必须相对于您当前所在的文件。 用

  • 本文向大家介绍Node.js readline模块与util模块的使用,包括了Node.js readline模块与util模块的使用的使用技巧和注意事项,需要的朋友参考一下 1. 使用readline模块逐行读取流数据 1.1. 创建Interface对象 在readline模块中,通过Interface对象的使用来实现逐行读取流数据的处理。因此首先要创建Interface对象,在readlin