草庐IT

rxjs-test-scheduler

全部标签

javascript - JavaScript test() 是否在正则表达式中保存状态?

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。打开浏览器控制台并执行以下代码:varfoo=/foo/g;然后,foo.test("foo")//true然后,foo.test("foo")//false如果您继续执行foo.test("foo"),您将看到交替出现的true/false响应,就好像varfoo实际上正在被修改一样。有人知道为什么会这样吗?

javascript - RxJs 从结果 Promise 创建 Observable

我是RxJs的新手,我想了解将Rx与Promises结合使用的最佳方式是什么。我想要创建的是Angular中的一个服务,它充当事件调度程序模式,并在promise完成后发出一个事件。我还需要的是,如果没有(事件)订阅者,则永远不会调用可观察对象。我最不想发生的事情是,可观察对象的任何后续订阅者都会获得相同的结果,而不会触发对服务器的另一个请求。我在这里设法实现了自己的解决方案://...CountryServicecodevarCOUNTRIES_LOADED=Rx.Observable.create(function(observer){$http.get('/countries')

javascript - 为什么连续调用 `pattern.test(name)` 结果相反

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。为什么这段代码先返回true,然后返回falsevarpattern=newRegExp("mstea",'gi'),name="AmandaOlmstead";console.log('1',pattern.test(name));console.log('1',pattern.test(name));演示:Fiddle

javascript - 从 RxJS subscribe() 函数访问声明为组件的变量

我可以使用this.variable访问组件任何部分的变量,除了像subscribe()或catch()这样的RxJS函数内部。在下面的示例中,我想在运行进程后打印一条消息:import{Component,View}from'angular2/core';@Component({selector:'navigator'})@View({template:'./app.component.html',styles:['./app.component.css']})exportclassAppComponent{message:string;constructor(){this.mess

Javascript 正则表达式.test() "Uncaught TypeError: undefined is not a function"

只是尝试通过.test()函数使用javascript的正则表达式功能。varnameRegex='/^[a-zA-Z0-9_]{6,20}$/';if(nameRegex.test($('#username').val())){...}错误在这一行if(nameRegex.test($('#username').val())){调试器在那里中断并说“UncaughtTypeError:undefinedisnotafunction”。好像.test()没有定义?不应该吗? 最佳答案 就目前而言,nameRegex不是正则表达式而是

javascript - RxJS,如何轮询 API 以使用动态时间戳持续检查更新的记录

我是RxJS的新手,我正在尝试编写一个应用程序来完成以下事情:加载时,发出AJAX请求(为简单起见伪造为fetchItems())以获取项目列表。在此之后的每一秒,发出一个AJAX请求以获取项目。检查新项目时,只有在最近时间戳之后更改的项目才应返回。在可观察对象之外不应该有任何状态。我的firstattempt非常直接,实现了目标1、2和4。vardata$=Rx.Observable.interval(1000).startWith('runrightaway').map(function(){//`fetchItems(modifiedSince)`returnsanarrayof

javascript - 守夜人 : Better way than `.pause(1000)` to avoid brittle tests?

.pause(1000)真的是等待表单提交的最佳实践吗?我正在寻找一种可靠地提交表单的方法,而无需知道作为表单提交结果出现的页面的详细信息。例子来自homepage使用.pause(1000)等待表单提交,具有讽刺意味的是不再起作用,但是这个带有修改后的css-selector版本的版本可以:module.exports={'DemotestGoogle':function(client){client.url('http://www.google.com').waitForElementVisible('body',1000).assert.title('Google').asser

javascript - 如何启动和停止 RXJS 中的可观察间隔?

我有一个非常简单的timeInterval可观察对象,我想在不断开订阅者的情况下开始/停止传输(无论可观察状态如何,订阅者都应该坐下来等待)。有可能吗?如果可能的话怎么办?varsource=Rx.Observable.interval(500).timeInterval().map(function(x){returnx.value+':'+x.interval;}).take(10);varsubscription=source.subscribe(function(x){$("#result").append('Next:'+x+'');},function(err){$("#r

javascript - RxJS throttle 行为;立即获得第一个值

示例Plunkr:https://plnkr.co/edit/NZwb3ol8CbZFtSc6Q9zm?p=preview我知道RxJS(5.0beta.4)有以下3种限制方法:auditTime()、throttleTime()和debounceTime()我正在寻找的行为是lodash默认情况下在throttle上执行的行为:>立即给我第一个值!>在连续的值上,保持给定延迟的值,然后发出最后出现的值>当throttledelay结束,回到状态(1)理论上这应该是这样的:inputObservable.do(()=>cancelPreviousRequest()).throttleT

javascript - 使用 RxJS 链接 promise

总的来说,我是RxJS和FRP的新手。我的想法是将我的ExpressJS应用程序中的现有promise链转换为可观察的实践。我知道这可能不是最好的例子,但也许有人可以帮助阐明一些问题。我想做什么:我有两个promise-prom1和prom2我希望prom1在prom2之前运行如果prom1发送reject(err),我想在它开始之前取消prom2。我希望prom1返回的错误消息可供观察者的onError方法使用。varprom1=newPromise(function(resolve,reject){if(true){reject('reason');}resolve(true);}