javascript 用于调试无状态Redux-Observable的Action Logger

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 用于调试无状态Redux-Observable的Action Logger相关的知识,希望对你有一定的参考价值。

import { filter, ignoreElements, tap } from 'rxjs/operators'

import { TOTAL_UPDATED } from './actions/requests'

const ignoreList = [
  TOTAL_UPDATED,
]

const actionLoggerEpic = (
  action$
) => (
  action$
  .pipe(
    filter(action => {
      !action
      || typeof action !== 'object'
      && (
        console
        .error("Action must be an `object` type.")
      )

      return action
    }),
    filter(action => {
      !action.type
      && (
        console
        .error("Action must have a `type` property.")
      )

      return action.type
    }),
    filter(({ type }) => (
      !(
        ignoreList
        .includes(type)
      )
    )),
    tap(({
      type,
      ...payload
    }) => {
      console
      .info(
        type,
        payload,
      )
    }),
    ignoreElements(),
  )
)

export default actionLoggerEpic

以上是关于javascript 用于调试无状态Redux-Observable的Action Logger的主要内容,如果未能解决你的问题,请参考以下文章

javascript React传递组件状态(状态与无状态)组件pt2

javascript React传递组件状态(状态与无状态)组件pt1

javascript REACT:基本无状态功能组件

javascript 无状态Redux减速机

javascript 无状态Redux-Observable

javascript 反应无状态功能组件模板