问题标签 [angular2-observables]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - 创建自定义 Observable
有可能(并且正确)创建一个自定义的 observable 吗?例如,如果我的缓存中有数据,我想在发出 http 请求之前创建自定义 observable:
我的请求:
谢谢
angular - Angular 2 - 导航到用户详细信息页面不显示选定的用户详细信息
我正在尝试创建一个用户详细信息页面,您可以在其中获取有关所选用户的更多信息。当您单击列表中的用户名时,它会成功导航到用户详细信息页面,但会引发此错误:
Unhandled Promise rejection: Error in src/person-details.component.html:3:25 caused by: Cannot read property 'id' of undefined
这是一个小插曲:http: //embed.plnkr.co/cUEIag77etv95ZFJY3iN/
这是代码:
人员列表.component.ts
人列表.component.html
人员详细信息.component.ts
人员详细信息.component.html
应用服务.ts
angular - Angular2 - 在 Observable ForkJoin 中获取错误 URL
我有一个可以包含多个 HTTP 请求的 Angular2 ForkJoin。当 ForkJoin 出错时,我希望能够确定导致错误的 ForkJoin 中请求的 URL 的子域/域。如果错误是 401 Unauthorized,那么我需要尝试重新建立新连接。我需要失败请求的子域/域,以便我可以查找凭据以重新建立令牌,然后再次尝试 ForkJoin 请求。我的 ForkJoin 可能会向不同的域发出多个请求。
发生错误时,是否可以在 ForkJoin 中的批量 URL 中确定 URL 的子域/域?
angular - 将多个具有不同动作/操作的 Observable 组合起来
我正在构建一个 Angular2 应用程序,所以我已经习惯了 Observables 和 Reactive Extensions 作为一个整体。我正在使用 TypeScript 和 rxjs。
现在我有一个可观察的,或者如果你愿意的话,我有一个流,它包含一些对象的数组。比方说人对象。现在我有另外两个 Person-objects 流,并且想将它们组合起来,所以我得到一个始终是最新的流:
如果 people-stream 发出一个数组,比方说 5 个人,然后 personAdded-stream 发出一个人,allPeople-stream 将发出一个 6 数组。如果 personRemoved-stream 发出一个人,allPeople-流应该发出一个 Person-objects 数组,而不是刚刚由 personRemoved-stream 发出的那个。
rxjs 中是否有内置方法来获得这种行为?
angular - ionic2/angualr2 取消主页选项卡上的 observables
我正在尝试取消 ionic2 上的主页选项卡上的一个 observable,这可能是那里的一个错误,因为现在 6 小时后没有任何效果。
我正在使用的可观察示例来自此站点 https://coryrylan.com/blog/intro-to-rxjs-observables-and-angular-2
我试过 ngZone,你不能从 ngZone 清除间隔,
我试过了
没有任何效果..这是代码...此代码在主页选项卡上
angular - 可观察到的更改后Angular 2父视图未更新
我有一个 Observable 服务,我用它来协调组件之间的数据。在这种情况下,我试图用它来控制哪些组件/ html 一次应该是可见的。
当我将父组件订阅的行为主体的值设置为true时,它会成功显示子组件(transform-addedit)。但是,当我从子组件更新控制此(mapAddingTransformSubj)的服务成员时,即使我在父组件中订阅,视图也不会切换回来。我确实确认父母正在正确接收可观察的价值。
如果有人可以提出更好的方法来做到这一点,我将不胜感激!
父组件html:
父组件.ts:
子组件 .ts:
我的部分服务:
angular - Angular 2 中的可观察链
我是 Angular2 的新手,需要 Observables 方面的帮助。
我有网络应用程序,它从远程资源中获取一些数据并将其显示给用户。
问题是我应该使用 http 获取数据,将其存储在本地,然后由其他组件使用。
我尝试了下一个方案:
数据.ts
控制器.ts
view.cityselector.html
但是,使用这个方案,我调用 http 3 次(而不是 1 次),并且这个值{{ cities }}
是未定义的
那么,我如何从 http 获取数据,将其传输到某个局部变量,然后使用本地数据,而不是始终调用新的 http
angular - Angular2路由解析多个动作
嘿,
我有一个应用程序,我们有多个用户,我想查看用户详细信息,所以我需要在输入路线之前通过 id 解析该用户。如果我首先将自己登陆到获取所有用户的用户组件,那么当我这样做时一切都好。但是在重新加载的情况下,路由尝试通过 id 解析用户并失败,因为已经没有用户(他们还没有被获取)。我想检查用户是否存在,获取它们,然后用用户解析路由。这是代码:
然后在组件中
当我收听路由数据时,我得到的只是用户对象:订阅者。当我只返回 this.usersService.getUserById 函数时,用户对象正常出现。
angular - Angular2 - 重复调用服务
我有一个从服务器检索数据的服务。此数据用于填充页面。我想每 5 秒刷新一次页面。我尝试了一个非常简单setInterval()
的方法,但是所有对服务器的调用都是一个接一个,而无需等待前一个调用完成。例如,当服务器出现故障时,这是一个问题。我现在不知道哪一个是最好的解决方案,也许是 rxjs 和 observables。