枚举 – 为什么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


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

查看所有标签

猜你喜欢:

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

乔纳森传

乔纳森传

利恩德·卡尼 / 汪琪 岳卉 王文雅 / 中信出版社 / 2014-1-1 / 49

抛开苹果公司,单就设计行业来讲,乔纳森也是一个特殊的人物。他推动了设计行业的大变革:不再为产品增加看起来炫得多的配件,而是要去掉多余的东西。 ——陈向东 终于有一本书能够如此地接地气:它不再关注那位神一样的乔布斯,而是关注那位站在神的背后,同样具有神一样光环的乔纳森。 ——孙陶然 乔纳森•艾夫把他自己对科学、人文、艺术,乃至整个世界的感知尽数渗透进苹果的设计和审美之中,他是......一起来看看 《乔纳森传》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

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

HSV CMYK互换工具