分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

RxJS之转化操作符 ( Angular环境 )

发布时间:2023-09-06 01:51责任编辑:顾先生关键词:Angular

一 map操作符

类似于大家所熟知的 Array.prototype.map 方法,此操作符将投射函数应用于每个值 并且在输出 Observable 中发出投射后的结果。

import { Component, OnInit } from ‘@angular/core‘;import { Observable } from ‘rxjs/Observable‘;import { of } from ‘rxjs/observable/of‘;import { map } from ‘rxjs/operators/map‘;@Component({ ?selector: ‘app-convert‘, ?templateUrl: ‘./convert.component.html‘, ?styleUrls: [‘./convert.component.css‘]})export class ConvertComponent implements OnInit { ?constructor() { } ?ngOnInit() { ???of(1, 2).pipe(map(val => val * 10)) ?????.subscribe(val => { ???????console.log(val); ?????}); ?}}

二 switchMap操作符

将每个源值映射成 Observable,并输出这个新生成的内部Observable。

源值发生变化时,停止旧的Observable及其订阅,输出新的Observable。

import { Component, OnInit } from ‘@angular/core‘;import { Observable } from ‘rxjs/Observable‘;import { interval } from ‘rxjs/observable/interval‘;import {map} from ‘rxjs/operators/map‘;import { switchMap } from ‘rxjs/operators/switchMap‘;@Component({ ?selector: ‘app-convert‘, ?templateUrl: ‘./convert.component.html‘, ?styleUrls: [‘./convert.component.css‘]})export class ConvertComponent implements OnInit { ?constructor() { } ?ngOnInit() { ???interval(5000) ?????.pipe( ???????switchMap( ?????????val => interval(1000) ???????????.pipe(map(val2 => val * 100 + val2)) ???????) ?????) ?????.subscribe(val => { ???????console.log(val); ?????}); ?}}

RxJS之转化操作符 ( Angular环境 )

原文地址:https://www.cnblogs.com/sea-breeze/p/8973000.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved