ngRx 官方示例分析 - 3. reducers】的更多相关文章

上一篇:ngRx 官方示例分析 - 2. Action 管理 这里我们讨论 reducer. 如果你注意的话,会看到在不同的 Action 定义文件中,导出的 Action 类型名称都是 Actions ,在导入的时候,同时导入同名的类型就是问题了.这里首先使用了 import as 语法进行重命名. import * as book from '../actions/book'; import * as collection from '../actions/collection'; 这样我们…
我们从 Action 名称开始. 解决 Action 名称冲突问题 在 ngRx 中,不同的 Action 需要一个 Action Type 进行区分,一般来说,这个 Action Type 是一个字符串,如何定义和使用这个字符串是需要首先考虑的问题.需要保证不同的 Action 名称不能冲突,使用的时候还需要方便,编码的时候,最好有提示等等. 首先处理命名冲突问题,示例使用 util 中定义的一个字典来检查是否已经定义了一个 Action app/util.ts /** * This func…
ngRx 的官方示例演示了在具体的场景中,如何使用 ngRx 管理应用的状态. 示例介绍 示例允许用户通过查询 google 的 book  API  来查询图书,并保存自己的精选书籍列表. 菜单有两个菜单项,分别是我的精选和图书浏览. 进入图书浏览页面后,可以输入搜索的书名.应用将在线搜索匹配的图书. 点击图书之后,可以得到图书的详细信息.如果图书还没有被收藏,则提示添加到收藏中. 如果已经添加到收藏中,则变成从收藏中移除. 在我的收藏中,可以看到当前收藏的图书列表. 示例快速上手 # clo…
Page 中通过构造函数注入 Store,基于 Store 进行数据操作. 注意 Component 使用了 changeDetection: ChangeDetectionStrategy.OnPush. OnPush means that the change detector's mode will be set to CheckOnce during hydration. /app/containers/collection-page.ts import 'rxjs/add/operat…
@ngrx/effect 前面我们提到,在 Book 的 reducer 中,并没有 Search 这个 Action 的处理,由于它需要发出一个异步的请求,等到请求返回前端,我们需要根据返回的结果来操作 store.所以,真正操作 store 的应该是 Search_Complete 这个 Action.我们在 recducer 已经看到了. 对于 Search 来说,我们需要见到这个 Action 就发出一个异步的请求,等到异步处理完毕,根据返回的结果,构造一个 Search_Complet…
组件通过标准的 Input 和 Output 进行操作,并不直接访问 store. /app/components/book-authors.ts import { Component, Input } from '@angular/core'; import { Book } from '../models/book'; @Component({ selector: 'bc-book-authors', template: ` <h5 md-subheader>Written By:<…
摘要: RocketMQ源码分析之从官方示例窥探RocketMQ事务消息实现基本思想. 在阅读本文前,若您对RocketMQ技术感兴趣,请加入RocketMQ技术交流群 RocketMQ4.3.0版本开始支持事务消息,后续分享将开始将剖析事务消息的实现原理.首先从官方给出的Demo实例入手,以此通往RocketMQ事务消息的世界中. 官方版本未发布之前,从apache rocketmq第一个版本上线后,代码中存在与事务消息相关的代码,例如COMMIT.ROLLBACK.PREPARED,在事务消…
官方示例中有许多很好的例子可以帮助大家理解和学习Halcon,下面举几个经典的斑点分析例子讲解一下 Crystals 图中显示了在高层大气中采集到的晶体样本的图像.任务是分析对象以确定特定形状的频率.重要的对象之一是六角形. 首先,使用read_image从文件中读取图像.由于晶体的对比度相对较低且结合了不均匀的背景,因此使用局部阈值执行对象的分割.该轮次由平均过滤器mean_image确定.选择滤光罩的尺寸,使其具有暗区宽度的大约三倍. dyn_threshold现在将平滑的和原始的灰色进行比…
关于 DotNetBar for Windows Forms 12.7.0.10_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版---------------------------------------------------------基于 官方原版的安装包 + http://www.cnblogs.com/tracky 提供的补丁DLL制作而成.安装之后,直接就可以用了.省心省事.不必再单独的打一次补丁包了.本安装包和补丁包一样都删除了官方自…
关于 DotNetBar for Windows Forms 12.5.0.2_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版--------------------------------------------------------- 基于 官方原版的安装包 + http://www.cnblogs.com/tracky 提供的补丁DLL制作而成. 安装之后,直接就可以用了. 省心省事.不必再单独的打一次补丁包了. 本安装包和补丁包一样都删除了…