Angular 异步请求返回流数据相关报错

开始时报这个错:
Property 'of' does not exist on type 'typeof Observable

我在stackoverflow上找到了一个答案,
导入:import 'rxjs/add/observable/of'后,找不到delay

我感觉好像哪里少一个模块之类的东西?

VS Code报错如下:
图片描述

TS部分代码如下:

function mobileAsyncValidator(control: FormControl): any {
    const myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
    const valid = myreg.test(control.value);
    console.log("mobile的校验结果是:" + valid);
    return Observable.of(valid ? null : {mobile : true}).delay(5000); 
  }
阅读 2.7k
2 个回答

因为你没有导入delay操作符,可以在文件上面加上 import 'rxjs/add/observable/delay';

rxjs有很多操作符,比如 mapmergeMapforkJoin 等,使用rxjs建议是按需加载,用到什么就加载什么,防止最后打包过大。

import 'rxjs/add/observable/of'

这句写到你用到 of 符号的文件顶部。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进