芝麻web文件管理V1.00
编辑当前文件:/home/freeclou/app.optimyar.com/backend/node_modules/react-redux/src/connect/mergeProps.js
import verifyPlainObject from '../utils/verifyPlainObject' export function defaultMergeProps(stateProps, dispatchProps, ownProps) { return { ...ownProps, ...stateProps, ...dispatchProps } } export function wrapMergePropsFunc(mergeProps) { return function initMergePropsProxy( dispatch, { displayName, pure, areMergedPropsEqual } ) { let hasRunOnce = false let mergedProps return function mergePropsProxy(stateProps, dispatchProps, ownProps) { const nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps) if (hasRunOnce) { if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps } else { hasRunOnce = true mergedProps = nextMergedProps if (process.env.NODE_ENV !== 'production') verifyPlainObject(mergedProps, displayName, 'mergeProps') } return mergedProps } } } export function whenMergePropsIsFunction(mergeProps) { return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined } export function whenMergePropsIsOmitted(mergeProps) { return !mergeProps ? () => defaultMergeProps : undefined } export default [whenMergePropsIsFunction, whenMergePropsIsOmitted]