angular6,已导入import {Observable} from 'rxjs'; 但是Observable.of()方法用不了?

来源:7-7 表单校验下

王笑天涯

2018-09-21

写回答

1回答

王笑天涯

提问者

2018-09-23

找到处理办法了:

【解决方法】

首先  import { of } from 'rxjs';

和 import {delay} from 'rxjs/operators';

然后将Observable.of() 改为 of()

再然后在 delay 外边加一层 pipe()

import {AbstractControl, FormControl, FormGroup} from '@angular/forms';
import {of} from 'rxjs';
import {delay} from 'rxjs/operators';

export function mobileAsyncValidator (control: FormControl): any {
  var myreg = /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/;

  let valid = myreg.test(control.value);
  console.log('mobile的校验结果是 - ' + valid);

  return of(valid ? null : {mobile: true}).pipe(
  delay(1000)
 );
}

参考地址

0
0

Angular4.0从入门到实战 打造股票管理网站

Angular新特性,教你熟练使用 Angular 和 Typescript 开发组件式单页应用

2683 学习 · 1361 问题

查看课程