当前位置:   article > 正文

redux学习1

redux学习1

  1. import {createStore} from 'redux';
  2. import reducer from './reducer'
  3. const store=createStore(reducer);
  4. export default store;

  1. const defaultState = {
  2. inputValue: '',
  3. };
  4. export default (state = defaultState, action) => {// NOSONAR
  5. try {
  6. if (action.type === 'change_input_value') {
  7. const newState = JSON.parse(JSON.stringify(state));
  8. if (action.inputValue) {
  9. newState.inputValue = action.inputValue;
  10. } else {
  11. newState.inputValue.nowMenuCode = '1';
  12. }
  13. // console.log('获取newValue111=== action', action);
  14. return newState;
  15. }
  16. if (action.type === 'update_select_menu') {// 更新被选中的内容
  17. const newState = JSON.parse(JSON.stringify(state));// state:获取现有的redux中的内容
  18. // newState.inputValue.nowMenu = action.value;// 将传入的参数更新到nowMenu标签中
  19. // console.log('获取newValue222=== action', action);
  20. newState.inputValue.nowMenuCode = action.value;// 将传入的参数更新到nowMenu标签中
  21. return newState;
  22. }
  23. } catch (e) {
  24. console.log('e', e);
  25. }
  26. return state;
  27. }
  1. store.getState() 获取状态
  2. store.dispatch({type:'', data: ''}) 修改状态
  3. // store进行订阅,当store进行变化时执行subscribe中的方法,状态变化时自动调回调函数
  4. store.subscribe(() => {
  5. //可以把store.subscribe放到useEffect中
  6. ReactDOM.render(<APP/>, document.getElementById('root'))
  7. })

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/213431
推荐阅读
相关标签
  

闽ICP备14008679号