Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.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
Angular 什么是可观测的。角度7的映射等价于承诺?_Angular_Promise - Fatal编程技术网

Angular 什么是可观测的。角度7的映射等价于承诺?

Angular 什么是可观测的。角度7的映射等价于承诺?,angular,promise,Angular,Promise,我可以知道如何将承诺解析为“另一个”值,该值在可观察对象中的工作方式类似于.map() new Promise((resolve,reject)=>{ this.file.resolveLocalFilesystemUrl(fileUrl).then(fileEntry => { fileEntry.getMetadata((metadata) => { if (metadata.size > 100000) { resolve('

我可以知道如何将承诺解析为“另一个”值,该值在可观察对象中的工作方式类似于.map()

new Promise((resolve,reject)=>{
  this.file.resolveLocalFilesystemUrl(fileUrl).then(fileEntry => {
    fileEntry.getMetadata((metadata) => {
      if (metadata.size > 100000) {
        resolve('Max file size');
      }else{
        resolve(null);
      }
    })
  });
})

map对流中发出的每个项运行一个转换函数。没有与此等效的承诺,您将在使用该数据解析承诺之前对该数据运行转换函数。

不幸的是,承诺的工作方式没有rxjs
.map()操作符,我能想到的唯一解决方案是,您可以使用
.map()
中的常规
.then()

Array.prototype.map()