枚举 – 为什么Flux架构示例使用常量作为动作类型而不是字符串?

栏目: IOS · 发布时间: 7年前

内容简介:代码日志版权声明:翻译自:http://stackoverflow.com/questions/27109652/why-do-flux-architecture-examples-use-constants-for-action-types-instead-of-stri
在Flux架构的所有例子和解释中 – Facebook的React动作类型名称的对应方法被引用为枚举常量而不是字符串. (见 http://facebook.github.io/flux/

的例子)我只是在寻找为什么这是首选方法.

我在创作和制作方面看不到好处方便,因为您是否键入constants.actionTypes.UPDATE_DATA(枚举常量)或“UPDATE_DATA”(字符串),您必须知道并键入确切的名称.事实上,有时使用非串增加了复杂性.您不能轻易地将动作类型作为键和动作处理程序作为值.

组织,细化还是其他的好处?我很好奇.

你在问题的结尾触动了它,但有一些好处.精简是明显的;另一个事实是,静态分析 工具 可以更容易地找到用途并捕获错误.

根据您的通量实施,他们也可以帮助您捕捉错字.例如,在Fluxxor中,如果您尝试将商店处理程序绑定到未定义的操作类型,则会遇到异常;这意味着传递c.UPDATE_DTA将抛出,但传递“UPDATE_DTA”将不会.

最后,他们可以帮助作为文档.如果您的应用程序生成的所有操作类型都以集中的方式定义为常量,则可以更容易地总结系统作为一个整体响应的操作.

有一个ES6功能可用于 BabelTraceur (但不在此时的JSX转换),有助于创建对象字面值;语法是:

var handlers = {
  [const.UPDATE_DATA]: this.handleUpdateData,
  [const.OTHER_THING]: this.handleOtherThing
};

代码日志版权声明:

翻译自:http://stackoverflow.com/questions/27109652/why-do-flux-architecture-examples-use-constants-for-action-types-instead-of-stri


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

复盘+:把经验转化为能力(第2版)

复盘+:把经验转化为能力(第2版)

邱昭良 / 机械工业出版社 / 39.00

随着环境日趋多变、不确定、复杂、模糊,无论是个人还是组织,都需要更快更有效地进行创新应变、提升能力。复盘作为一种从经验中学习的结构化方法,满足了快速学习的需求,也是有效进行知识萃取与共享的机制。在第1版基础上,《复盘+:把经验转化为能力》(第2版)做了六方面修订: ·提炼复盘的关键词,让大家更精准地理解复盘的精髓; ·基于实际操作经验,梳理、明确了复盘的"底层逻辑"; ·明确了复......一起来看看 《复盘+:把经验转化为能力(第2版)》 这本书的介绍吧!

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具