添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
想出家的萝卜  ·  钩子 | React Redux 中文网·  2 小时前    · 
时尚的大葱  ·  Hooks | React Redux 中文·  2 小时前    · 
聪明的海龟  ·  Redux学习篇:关于store.subsc ...·  2 小时前    · 
痴情的甘蔗  ·  边缘性人格障碍 (BPD) ...·  1 周前    · 
买醉的拖把  ·  php ...·  1 月前    · 
非常酷的手套  ·  PA5 無源筆 | XPPen·  1 月前    · 
叛逆的感冒药  ·  GitHub - ...·  4 月前    · 

Store 允许使用store.subscribe方法设置监听函数,一旦 State 发生变化,就自动执行这个函数。

store.subscribe方法返回一个函数,调用这个函数就可以解除监听。
在这里插入图片描述

import React, {useEffect} from 'react';
import store from '../../Store/index';
import {addAction, decAction} from '../../Action';
export default function Three(props:any){
  const add = (payload:number) => {
    return () => {
      const actionAdd = addAction(payload);
      store.dispatch(actionAdd)
  const dec = (payload:number) => {
    return () => {
      const actionDec = decAction(payload);
      store.dispatch(actionDec);
  useEffect(() => {
    // 监听state的变化
    let unsubscribe  = store.subscribe(() => {
      console.log('监听中..',store.getState())
    return () => {
      // 取消监听
      unsubscribe();
  },[])
  return(
    <h2>这是Ⅲ页</h2>
    <button onClick={add(4)}>点击添加4</button> &nbsp; 
    <button onClick={dec(2)}>点击减去2</button>
store.js
 import { createStore } from 'redux' ;
import initSubscriber from 'redux-subscriber' ;
const store = createStore ( ... ) ;
// "initSubscriber" returns "subscribe" function, so you can use it
const subscribe = initSubsc
                                    核心竞争力,怎么才能提高呢?成年人想要改变生活,逆转状态?那就开始学习吧~万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。为了帮助大家更好更高效的准备面试,特别整理了《前端工程师面试手册》电子稿文件。
                                    React Observable Subscribe 使用教程
 react-observable-subscribe component to automatically consume observables declaratively in React JSX项目地址:https://gitcode.com/gh_mirrors/re/react-observable-subscribe 项...
Store: 保存数据的地方可以当成一个容器, 一个项目中只能有一个,
store.getState(): 获取store 中的数据
	store.dispatch(action): 向 store 派发新的 action
	store.subscribe(() => {}), 监听 store 中数据的变化
具体使用方法:
// 首先 ...
                                    redux学习1.为什么使用redux:2.redux理解:3.基本的API
1.为什么使用redux:
我们在开发一个小的项目时逻辑层比较简单,组件间的传值只是简单的父子结构或者兄弟结构。但是随着项目体积不断的扩张,js需要管理很多的state。由于多层结构之间都互相依赖的关系,动一个state其他的state可能会发生不可预知的变化,所以state的管理非常的困难。我的理解就是redux是一个仓库把需要管理的状态放入这个仓库进行统一管理。
2.redux理解:
举个栗子:
这是一个普通对象的state
一年半前,我写了《React 入门实例教程》,介绍了 React 的基本用法。
但是,React 只是 DOM 的一个抽象层,并不是 Web 应用的完整解决方案。也就是说,只用 React 没法写大型应用。
为了解决这个问题,2014年 Facebook 提出了 Flux 架构的概念,引发了很多的实现。2015年,Red
0.store.registerModule注册模块
1.store.watch 监听state值变化
2.store.subscribe监听muatation被调用
3.store.subscribeAction监听action被调用
Vuex热更替(保持状态)
......
                                    注意: 在redux里会要求返回一个全新的state出来,原因是处于性能考虑,如果改变了某个属性,redux还需要去一个个对比是哪个属性发生了变化,而对于一个大型的数据结构来说,做深度检查是及其好性能的,所以redux选择了返回一个新的对象的方式。(创建一个对象的方式比做深度的对比性能要开销的小的多)。
计算机中如果有一些事情不能理解,要么就是出于性能,要么就是出于安全性考虑的
reducer是一个函数,在createStore的时候会自动执行一次。
store的两个方法store.getStat.
                                    在做 Vue 相关项目的时候,总会遇到因为页面刷新导致 Store 内容丢失的情况。复杂的项目往往涉及大量的状态需要管理,如果仅因为一次刷新就需要全部重新获取,代价也未免太大了。那么我们能不能对这些状态进行本地的持久化呢?答案是可以的,社区里也提供了不少的解决方案,如 vuex-persistedstate, vuex-localstorage 等插件,这些插件都提供了相对完善的功能。当...
const { store } = createStore(reducer)
store.subscribe(放上view的更新函数)//对于React   则是render和setState
此后  更新函数的每一次变化都会触发view的重新自动渲染
                                    View视图中通过dispatch触发action修改state中的数据,state中的数据修改后更新View视图中去,在class组件中,我们通过store中Api方法subscribe() 监听;state数据的变化,从而更新react组件重新渲染组件。
import React, { Component } from 'react'
import store from "./store";
import axios from 'axios';
export class DD extends Component {
    constructor(props){
        super(props);
                                    可以通过 store 的 $subscribe() 方法查看状态及其变化。类似于 Vuex 的 subscribe 方法,订阅 store 的 mutation。const unsubscribe = store.subscribe((mutation, state) => {
  console.log(mutation.type)
  console.log(m...