iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 28
1
Modern Web

循序漸進學習 Javascript 測試系列 第 28

Day 28 測試 React 元件:測試 Redux

  • 分享至 

  • xImage
  •  

先看一下使用 redux 的元件小範例:

import {createStore} from 'redux'
import {reducer} from './redux-reducer'

const store = createStore(reducer)

export {store}
const initialState = {count: 0}
function reducer(state = initialState, action) {
  switch (action.type) {
    case 'INCREMENT':
      return {
        count: state.count + 1,
      }
    case 'DECREMENT':
      return {
        count: state.count - 1,
      }
    default:
      return state
  }
}

export {reducer}
import React from 'react'
import {useSelector, useDispatch} from 'react-redux'

function Counter() {
  const count = useSelector(state => state.count)
  const dispatch = useDispatch()
  const increment = () => dispatch({type: 'INCREMENT'})
  const decrement = () => dispatch({type: 'DECREMENT'})
  return (
    <div>
      <h2>Counter</h2>
      <div>
        <button onClick={decrement}>-</button>
        <span aria-label="count">{count}</span>
        <button onClick={increment}>+</button>
      </div>
    </div>
  )
}

export {Counter}

P.S. 嗚嗚,先發文再補完


上一篇
Day 27 測試 React 元件:測試 react-router
下一篇
Day 29 測試 React 元件:測試 React Hook
系列文
循序漸進學習 Javascript 測試30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言