Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我能';t返回一个对象值,但它由console.log显示_Javascript_Angular_Angular Pipe - Fatal编程技术网

Javascript 我能';t返回一个对象值,但它由console.log显示

Javascript 我能';t返回一个对象值,但它由console.log显示,javascript,angular,angular-pipe,Javascript,Angular,Angular Pipe,我试图返回由aws translate生成的对象的字符串值,该结构的对象是 { TranslatedText: "Hola", SourceLanguageCode: "en", TargetLanguageCode: "es" } 功能 this.translate.translator.translateText(params, (err, data) => { if (err) { console.log(err, err.stack)

我试图返回由aws translate生成的对象的字符串值,该结构的对象是

{
 TranslatedText: "Hola", 
 SourceLanguageCode: "en", 
 TargetLanguageCode: "es"
}
功能

    this.translate.translator.translateText(params, (err, data) => {
      if (err) {
        console.log(err, err.stack)
        return err.stack;
      } 
      if(data) { 
        console.log("translation :");
        console.log(data.TranslatedText);
        return data.TranslatedText;
      }
    });
我可以在控制台中看到字符串,但它不会返回它


我想我误解了这里的一些异步作业,可能返回的值实际上得到了一个未定义的值,但我不清楚。

因为它在回调函数中,所以您将无法像现在这样返回数据。尝试改用承诺。

如果从回调返回值没有意义。对回调中的返回值执行所需操作。

听起来像是
translateText
是一个
async
函数。因此,请像这样等待:

this.translate.translator.translateText(params, (err, data) => {
      if (err) {
        console.log(err, err.stack)
        return err.stack;
      } 
      if(data) { 
        console.log("translation :");
        console.log(data.TranslatedText);
        return data.TranslatedText;
      }
    });