草庐IT

observer

全部标签

javascript - 页面加载时立即触发 IntersectionObserver 回调

我是IntersectionObserverAPI的新手,我一直在试验这段代码:lettarget=document.querySelector('.lazy-load');letoptions={root:null,rootMargin:'0px',threshold:0}letobserver=newIntersectionObserver(callback,options);observer.observe(target);functioncallback(){console.log('observertriggered.');}这似乎可以正常工作,并且每当.lazy-load元

javascript - 如何在 redux-observable 的史诗中执行副作用?

在redux-observable中,史诗接受Action流并返回新的Action流。在我的用例中,我需要在调度某些操作后发送分析事件,然后什么也不做。使用redux-saga,我可以使用takeEvery来监听那个Action,并在saga函数中执行副作用:function*saga(){yieldtakeEvery('SOME_ACTION',function*(){sendAnalytics();})}但是我怎样才能用redux-observable实现同样的效果呢?有很多副作用,不需要调度新操作,如初始化插件、日志记录、设置cookie等......如果它是这两个库的反模式,那

javascript - Ember.observer 在初始化时运行

我正在尝试构建一个没有原型(prototype)扩展的Ember应用程序,Ember文档提供了如何执行此操作的示例,但它们不包括我希望我的观察者何时在init上运行的示例。所以目前如果我的代码是这样写的:fullNameChanged:function(){//dealwiththechange}.observes('fullName').on('init')我能找到的唯一例子是这样写的:Person.reopen({fullNameChanged:Ember.observer('fullName',function(){//dealwiththechange})});那么我如何告诉此

javascript - Event.observe 函数 - 按类而不是 id 观察元素

有原型(prototype)js函数:Event.observe(元素、事件名称、处理程序)这里的元素是指元素的ID。是否可以将元素的class放在这里?我从第三方获得了这个元素,只有class属性。 最佳答案 $$可以通过css选择器检索元素,包括通过periodnotation按类检索元素。:$$('.myClass');//arraywithallelementsthathaveclass"myClass"为了回答您的问题,Event.observe是observe的“静态”版本(出于所有意图和目的)。作为方便原型(proto

javascript - 如何重启或刷新 Observable?

我有一个TypeScript/Angular2Observable,它在我第一次调用时就完美运行。但是,我有兴趣将多个订阅者附加到同一个可观察对象并以某种方式刷新可观察对象和附加的订阅者。这是我得到的:query():Rx.Observable{returnthis.server.get('http://localhost/rawData.json').toRx().concatMap(result=>result.json().posts).map((post:any)=>{varrefinedPost=newRefinedPost();refinedPost.Message=pos

javascript - 为什么你会在 Observable 函数上调用 .call() ?

我是Angular的相对初学者,我正在努力理解我从ng-bootstrap项目中阅读的一些源代码。Thesourcecodecanbefoundhere.我对ngOnInit中的代码感到很困惑:ngOnInit():void{constinputValues$=_do.call(this._valueChanges,value=>{this._userInput=value;if(this.editable){this._onChange(value);}});constresults$=letProto.call(inputValues$,this.ngbTypeahead);con

javascript - Angular2 路由守卫返回 Observable<bool>,如何处理错误

我有一个像下面这样的路由守卫@Injectable()exportclassAuthGuardimplementsCanActivate{constructor(privaterouter:Router,privateauthenticationSvc:AuthenticationService){}canActivate():Observable{returnthis.authenticationSvc.getAuthenticatedUser().map(r=>{if(this.authenticationSvc.isAuthenticated()){//loggedinsoret

javascript - 展平嵌套的 Observable

我被困在嵌套的可观察hell中,需要一只手。我有以下代码块returnthis.findUser(term).map(users=>{returnusers.map(user=>this.getLastLogin(user.user_id).map(last_login=>{user.last_login=last_login;returnuser;}));});findUser返回Observable和getLastLogin返回Observable.我基本上希望获取用户列表,然后使用来自另一个值的信息更新它。现在上面的代码正在返回[]>.我想我可以替换初始的map与flatMap但

javascript - RxJS 捕获 **并** 重试 Observable

我的用例是将Observable映射到成功和失败的redux操作。我进行网络调用(具有提供promise的功能),如果成功,我必须转发成功操作,如果失败则不是错误操作。Observable本身将继续运行。对于我所能搜索到的所有内容,RxJS没有一种机制可以捕获错误并重试原始错误。我的代码中有以下我不满意的解决方案:error$=newRx.Subject();searchResultAction$=search$.flatMap(getSearchResultsPromise).map((resuls)=>{return{type:'SUCCESS_ACTION',payload:{r

javascript - RxJS:Observable.create() 与 Observable.from()

这两者有什么区别?returnObservable.create(function(observer){if(array)observer.next([]);elseobserver.next(null);observer.complete();});和returnObservable.from(array?[]:null);我认为它可能是一样的,但效果不一样。 最佳答案 create(...)是一个通用的Observable工厂方法,用于创建一个Observable,您可以在其中明确指定值的方式传递给订阅者例如,如果您要创建一个定