• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript ignoreElements.ignoreElements函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中rxjs/operators/ignoreElements.ignoreElements函数的典型用法代码示例。如果您正苦于以下问题:TypeScript ignoreElements函数的具体用法?TypeScript ignoreElements怎么用?TypeScript ignoreElements使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了ignoreElements函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: simulateClickEffect

export function simulateClickEffect(
    xs: Observable<ClickEvent.IncomingPayload>,
    inputs: Inputs
) {
    return xs.pipe(
        withLatestFrom(inputs.window$, inputs.document$),
        tap(([event, window, document]) => {
            const elems = document.getElementsByTagName(event.tagName);
            const match = elems[event.index];

            if (match) {
                if (document.createEvent) {
                    window.setTimeout(function() {
                        const evObj = document.createEvent("MouseEvents");
                        evObj.initEvent("click", true, true);
                        match.dispatchEvent(evObj);
                    }, 0);
                } else {
                    window.setTimeout(function() {
                        if ((document as any).createEventObject) {
                            const evObj = (document as any).createEventObject();
                            evObj.cancelBubble = true;
                            (match as any).fireEvent("on" + "click", evObj);
                        }
                    }, 0);
                }
            }
        }),
        ignoreElements()
    );
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:31,代码来源:simulate-click.effect.ts


示例2: setWindowNameDomEffect

export function setWindowNameDomEffect(xs: Observable<string>, inputs: Inputs) {
    return xs.pipe(
        withLatestFrom(inputs.window$),
        tap(([value, window]) => (window.name = value)),
        ignoreElements()
    );
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:7,代码来源:set-window-name.dom-effect.ts


示例3: setOptionsEffect

export function setOptionsEffect(
    xs: Observable<IBrowserSyncOptions>,
    inputs: Inputs
) {
    return xs.pipe(
        tap(options => inputs.option$.next(options)),
        // map(() => consoleInfo('set options'))
        ignoreElements()
    );
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:10,代码来源:set-options.effect.ts


示例4: setScrollDomEffect

export function setScrollDomEffect(
    xs: Observable<SetScrollPayload>,
    inputs: Inputs
) {
    return xs.pipe(
        withLatestFrom(inputs.window$),
        tap(([event, window]) => window.scrollTo(event.x, event.y)),
        ignoreElements()
    );
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:10,代码来源:set-scroll.dom-effect.ts


示例5: function

 return function(xs, inputs) {
     return xs.pipe(
         withLatestFrom(
             inputs.io$,
             inputs.window$.pipe(pluck("location", "pathname"))
         ),
         tap(([event, io, pathname]) =>
             io.emit(name, { ...event, pathname })
         ),
         ignoreElements()
     );
 };
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:12,代码来源:socket-messages.ts


示例6: browserSetLocationEffect

export function browserSetLocationEffect(
    xs: Observable<IncomingPayload>,
    inputs: Inputs
) {
    return xs.pipe(
        withLatestFrom(inputs.window$),
        tap(([event, window]) => {
            if (event.path) {
                return ((window.location as any) =
                    window.location.protocol +
                    "//" +
                    window.location.host +
                    event.path);
            }
            if (event.url) {
                return ((window.location as any) = event.url);
            }
        }),
        ignoreElements()
    );
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:21,代码来源:browser-set-location.effect.ts


示例7: setScrollEffect


//.........这里部分代码省略.........
        })(tupleStream$);

        /**
         * Further split the element scroll between those matching in `scrollElementMapping`
         * and regular element scrolls
         */
        const [mapped$, nonMapped$] = partition(([event]: Tuple) => {
            return event.mappingIndex > -1;
        })(element$);

        return merge(
            /**
             * Main window scroll
             */
            document$.pipe(
                tap((incoming: Tuple) => {
                    const [
                        event,
                        window,
                        document,
                        scrollProportionally
                    ] = incoming;
                    const scrollSpace = getDocumentScrollSpace(document);

                    if (scrollProportionally) {
                        return window.scrollTo(
                            0,
                            scrollSpace.y * event.position.proportional
                        ); // % of y axis of scroll to px
                    }
                    return window.scrollTo(0, event.position.raw.y);
                })
            ),
            /**
             * Regular, non-mapped Element scrolls
             */
            nonMapped$.pipe(
                tap((incoming: Tuple) => {
                    const [
                        event,
                        window,
                        document,
                        scrollProportionally
                    ] = incoming;

                    const matchingElements = document.getElementsByTagName(
                        event.tagName
                    );
                    if (matchingElements && matchingElements.length) {
                        const match = matchingElements[event.index];
                        if (match) {
                            return scrollElement(
                                match,
                                scrollProportionally,
                                event
                            );
                        }
                    }
                })
            ),
            /**
             * Element scrolls given in 'scrollElementMapping'
             */
            mapped$.pipe(
                withLatestFrom(
                    inputs.option$.pipe(pluck("scrollElementMapping"))
                ),
                /**
                 * Filter the elements in the option `scrollElementMapping` so
                 * that it does not contain the element that triggered the event
                 */
                map(([incoming, scrollElementMapping]: [Tuple, string[]]) => {
                    const [event] = incoming;
                    return [
                        incoming,
                        scrollElementMapping.filter(
                            (item, index) => index !== event.mappingIndex
                        )
                    ];
                }),
                /**
                 * Now perform the scroll on all other matching elements
                 */
                tap(([incoming, scrollElementMapping]: [Tuple, string[]]) => {
                    const [
                        event,
                        window,
                        document,
                        scrollProportionally
                    ] = incoming;
                    scrollElementMapping
                        .map(selector => document.querySelector(selector))
                        .forEach(element => {
                            scrollElement(element, scrollProportionally, event);
                        });
                })
            )
        ).pipe(ignoreElements());
    }
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:101,代码来源:set-scroll.ts


示例8: incomingDisconnect

export function incomingDisconnect(xs: Observable<any>) {
    return xs.pipe(tap(x => console.log(x)), ignoreElements());
}
开发者ID:BrowserSync,项目名称:browser-sync,代码行数:3,代码来源:Disconnect.ts



注:本文中的rxjs/operators/ignoreElements.ignoreElements函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript map.map函数代码示例发布时间:2022-05-25
下一篇:
TypeScript filter.filter函数代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap