createAction 先了解一下这个文件是做什么的?
从单词字面意思能看出是创建一个action
的,接下来我们看一下源码中主要做了写什么操作:
//使用invariant()方法来断言程序假定为true的状态,提供有关内容和预期内容的信息,
//将错误信息以throw的形式抛出
import invariant from 'invariant';
//判断某个参数typeof 是否为function ->return typeof value === 'function'
import isFunction from './utils/isFunction';
//返回一个匿名函数 ƒ (value) { return value;}
import identity from './utils/identity';
//判断某个参数是否为null ->return value === null;
import isNull from './utils/isNull';
/**
* 创建action
* @param type action的类型
* @param payloadCreator 需要创建的action,函数
* @param metaCreator action的属性
* @returns {Function}
*/
export default