Node.js 获取调用文件中模块的返回值
我的根节点文件需要一个名为q1的模块(不包括所有不相关的必需库) 我这样称呼它:const message=require('q1')。analyzetouction('text string')Node.js 获取调用文件中模块的返回值,node.js,node-modules,Node.js,Node Modules,我的根节点文件需要一个名为q1的模块(不包括所有不相关的必需库) 我这样称呼它:const message=require('q1')。analyzetouction('text string') 通过控制台日志记录,我可以看到它可以被转换成适当的handlePositive或handleNegative方法,但是没有任何结果。我试过几种不同的方法,但都没能奏效。有没有人有什么建议,或者看到我做错了什么?这是我第一次使用node。您的函数analyzetouction没有返回任何内容(请参阅下面
通过控制台日志记录,我可以看到它可以被转换成适当的handlePositive或handleNegative方法,但是没有任何结果。我试过几种不同的方法,但都没能奏效。有没有人有什么建议,或者看到我做错了什么?这是我第一次使用node。您的函数
analyzetouction
没有返回任何内容(请参阅下面的解释)
试试这个:
const analyzeSentiment = function(message) {
return sentiment.getSentiment(message).then(result => {
return (result.vote === 'positive') ? handlePositive() : handleNegative();
});
}
在您的来电者中:
require('q1').sentimentAnalyzer('text string').then(message => {
// Do your thing with the message here
});
或者,如果您处于异步上下文中,则可以在调用方上使用wait:
const message = await require('q1').sentimentAnalyzer('text string');
您可能想知道为什么
会返回(result.vote===…
没有从分析情感
-函数返回。原因是您正在然后-块中创建一个带有箭头表达式result=>…
的匿名函数。什么是情感分析器
?它不在代码中?如果您想从analyzetouction
您需要返回整个语句return-touction.gettouction(message)。然后(result=>{return(result.vote=='positive')?handlePositive():handleNegative();})
那是因为我是一个白痴,错误地说出了我自己的函数调用。代码中的错误是正确的,只是不在这里。修复了。谢谢!是的,这确实是我缺少的。匿名函数没有返回。
const message = await require('q1').sentimentAnalyzer('text string');