【发布时间】:2017-01-09 10:58:28
【问题描述】:
使用 Redux 时的一个常见约定是将操作以 consts 的形式存储在自己的文件中,如下所示:
export const USER_AUTH_ATTEMPT = 'USER_AUTH_ATTEMPT';
export const USER_AUTH_CHECK = 'USER_AUTH_CHECK';
export const USER_AUTH_FAIL = 'USER_AUTH_FAIL';
export const USER_AUTH_SUCCESS = 'USER_AUTH_SUCCESS';
export const USER_AUTH_LOGOUT = 'USER_AUTH_LOGOUT';
动作名称的值通常是string。改用这样的约定会有什么好处吗?:
export const USER_AUTH_ATTEMPT = 0;
export const USER_AUTH_CHECK = 1;
export const USER_AUTH_FAIL = 2;
export const USER_AUTH_SUCCESS = 3;
export const USER_AUTH_LOGOUT = 4;
操作的值将存储为整数,这可以减小文件大小。这样做会有什么负面影响吗?
【问题讨论】:
-
是的,允许 int 作为动作类型会很棒,因为它们可以使用 typescript 的枚举功能并且具有强类型的动作“类型”。
标签: javascript reactjs ecmascript-6 redux react-redux