ngrx相关内容
我有两个可以正常工作的观察值: @ViewChild(MatPaginator) paginator: MatPaginator; @ViewChild(MatSort) sort: MatSort; ngOnInit() { ... merge(this.sort.sortChange, this.paginator.page) .pipe( startWith({}
..
我有一个数量字段和一个“添加"按钮.单击按钮后,将添加数量的新字段以及“删除"按钮以将其删除. 我已经使用了Form数组 我的代码如下
..
角度6.0.1 ngRx 6.0.1 我在视图中设置了一个插值: {{firstName}} 当绑定的字段的值更改时,它不会更新.值正在更改-如果我将其注销到订阅内的控制台,则会看到更新后的值.它只是不会在用户界面中更新. 以下是相关代码: 从我的组件中订阅: private subscribeToCurrentPerson(): void { thi
..
我的NgRx效果有问题. 应用程序正确地添加到商店中,不幸的是,我没有执行请求的效果,即在启动添加新车时,将其添加到商店中就这样了.问题是我的效果没有控制台日志,没有url错误导致的http错误,一无所有. 我的应用代码: 减速器 import { Action } from '@ngrx/store'; import * as CarActions from './car
..
我正在尝试将现有应用程序从ngrx v2迁移到v4,并且在/actions/action-with-payload.ts-迁移的解决方法 import { Action } from '@ngrx/store'; export class ActionWithPayload implements Action { type: string; payload?: any; }
..
我想将Ngrx用于OAuth2服务,我需要在不使用订阅的情况下获取当前的存储状态. 这是我的OAuth函数,用于从localStorage获取令牌: private oAuth2() { const token = JSON.parse(localStorage.getItem('oAuthToken')); if (token && token.access_toke
..
我正在构建一个应用程序,该应用程序使用城市名称发送到api端点并返回该城市的天气. 它使用两个动作,一个将使用名称作为有效负载来更新城市,动作两个加载返回的新数组以更新状态 该效果使用switchMap映射api调用,然后返回结果. 用于显示商店结果的选择功能仅在页面加载开始(空数组)和第一组结果时检测商店更新 并且之后没有检测到我商店中的更改 页面显示数组中的第一个
..
干(不要重复自己) 假设我的应用中经常使用以下代码: observable$.pipe( tap(value => console.log(value)), map(value => value * 5), ... more repeated stuff ) 假设代码5的某些部分的值不同,但其他所有部分都相同.我可以以某种方式对其进行功能化/执行某些操作以使其可重用,以
..
我正在忙于MeteorJS和RxJS,它们正在退出,但有时也有些混乱. 我当前的问题仅是Angular NgRx问题,与MeteorJS不相关. 如您在示例中看到的,有一个基于showChannels的ngIf.此布尔值设置为false.但是,内部的async for循环引用到了我的store.select. 但是,由于存在ngIf,因此永远不会执行管道中的运算符.这似乎是一个僵局. 如何启
..
我正在制作一个效果器,它将是轮询服务器. 我要实现的目标如下: 1)将GET请求发送到服务器 2)收到响应后,等待3秒钟 3)发送相同的GET请求 4)收到响应后,等待3秒钟 5)发送相同的GET请求 ...等等. 我现在拥有的代码无法正常工作,因为它每3秒轮询一次服务器,无论是否收到响应: @Effect() pollEntries$ = t
..
最近我由于在angular/ngrx/typescript生态系统中某种事物的特定行为(我无法确定可能的根本原因)而花费了很多时间. 场景:我已经建立了一些效果,并将它们导出到桶文件(index.ts)中: import {MyEffects} from './my.effects'; export const effects: any[] = [ MyEffects, ];
..
我已经成功地使用RxJS将较大的Excel计算迁移到JS.当任何Excel公式使用多个输入时,任何输入数据均表示为Observable,随后的计算将使用.map和.combineLatest进行. 除一个问题外,此方法效果很好.这是一个简化的示例: 在两个不同的计算中使用三个输入(a$=1,b$=2,c$=3)(第一个是$ab = $a+$b = 3,第二个是$bc = $b+$c =
..
所以我知道这个问题看似简单,但并不是那么简单. 我尝试过的所有运算符,例如combineLatest,concat和switchMap都会导致差异问题. 这就是挑战: var campaignSelected$ = this.store.select(store => store.appDb.uiState.campaign.campaignSelected) var campaign
..
我的应用程序中有多个减速器,这些减速器组合在app.reducers.ts中.当我的动作发生时,应使用另一个减速器的当前状态中的单个值来更新一个减速器的状态(这样,计划外的交货将成为已计划的),然后从第二个减速器的状态中删除该值. 这是我可以删除它的方法,但是在执行此操作之前,我需要更新其他状态. case UNPLANNED_ACTIONS.REMOVE_UNPLANNED_DELIVER
..
以前,我可以测试以下商店选择 this.store.select(fromRoot.someselector).pipe(map(r => this.store.dispatch(new Action()))); 这是我的测试 {provide: Store, useValue: jasmine.createSpyObj('store', ['select']); store.s
..
我有一个应用程序,我刚刚在其中添加了NgRX,我希望使用效果来打开和关闭轮询. 示例大纲 我关注了这篇文章这似乎是一个好方法.我有一个此处的简化示例,其中大部分代码位于app.effects.ts. 与示例类似,除了使用新的createEffect工厂方法外,我还具有startPolling$,stopPolling$和continuePolling$的效果. 此外,我将d
..
我打算用Angular 5创建一个大型应用程序.我也想使用Ngrx来存储我的应用程序的状态.但是有一件事我不明白. 假设我有一个对象(为了简单起见,我现在不使用类或接口),它以Store表示我的状态: let state = { x: 10, y: [1, 2, 3] }; 在我阅读的每篇文章中,作家都使用Object.assign()在reducer中创建状态的副
..
我正在使用Angular编写应用程序,并且通过 ngrx/store 使用 Redux 存储我的应用程序状态. 一切正常,但是现在我的应用程序变得很大,我得到了以下观察结果: 对于几乎每个页面/资源,我都使用一个从后端获取的不同解析器,以正确显示此特定页面并在该特定页面上执行操作所需的所有数据. 此解析器使我可以使该页面独立于应用程序的先前状态. 因此,如果应用程序已加载并
..
我是一个使用Redux的Angular 2应用程序(带有@ ngrx/store),我以这种方式对商店进行了建模: { modelA: { ids: [1, 2], entities: { 1: { name: "name modelA 1" }, 2: { name: "name modelA 2" } }
..
我正在使用选择器从商店中进行选择 this.quizz = this.store.select(getSelectedQuizz); 我使用异步管道从模板中的这种可观察对象读取 [*ngIf="quizz | async; let quizz"] 我只定义动作,但没有修改reducer,但模板是表单,当我保存表单时,我调度了一个更新动作,该动作仅在我的动作中以readonly定
..