我现在正忙着使用Javascript,节点js和sails。我试图学习如何做一些事情。
现在,我已经为我想要做的基本情况找到了类比。我想将从休息调用返回的json返回给控制器,并将其显示在网页上。
到目前为止,这就是我所拥有的:
module.exports = {
/**
* `PersonController.scream()`
*/
scream: function (req, res) {
function subscream(){
var per = {voice: 'AAAAAAAAAAAAAAA'};
return per;
}
var loudness = subscream()
return loudness;
}
};
console.log语句会将json打印到控制台,但该函数似乎永远不会返回。我知道我错过了一些明显的东西,但是我对Javascript或节点js知之甚少,不知道该怎么称呼这个问题,所以不幸的是我不能谷歌。
答案 0 :(得分:2)
要将JSON打印到客户端,您必须发送响应,而不是在函数中返回JSON。
scream: function (req, res) {
function subscream(){
var per = {voice: 'AAAAAAAAAAAAAAA'};
var perString = JSON.stringify(per);
console.log(perString)
return perString;
}
var loudness = subscream()
res.send(loudness);
}
答案 1 :(得分:0)
module.exports = {
/**
* `PersonController.scream()`
*/
scream: function (req, res) {
function subscream(){
return new Promise(function(resolve, reject){
var per = {voice: 'AAAAAAAAAAAAAAA'};
var perString = JSON.stringify(per);
console.log(perString)
resolve(perString);
})
}
var scream = subscream()
scream.then(function(resolvedPromise){
res.send(resolvedPromise)
}).catch(function(){
res.send("error")
})
}
};