当前位置: 首页 > news >正文

做一个平台网站要多少钱seo短视频入口引流

做一个平台网站要多少钱,seo短视频入口引流,聊城手机网站制作,al万词推广网站引流1 Redux概述 Redux 是 JavaScript 状态容器,提供可预测化的状态管理。Redux中文文档 Redux 和react没有必然关系,redux可以应用于各种框架,包括jquery,甚至js都可以使用redux,只不过redux和react更加搭配。redux也推…

1 Redux概述

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。Redux中文文档

Redux 和react没有必然关系,redux可以应用于各种框架,包括jquery,甚至js都可以使用redux,只不过redux和react更加搭配。redux也推出了专门应用于react的react-redux。

Redux的设计初衷

随着Javascript单页面开发日趋复杂,Javascript需要管理更多的state(状态)。这些 state 可能包括服务器响应、缓存数据、本地生成尚未持久化到服务器的数据,也包括 UI 状态,如激活的路由,被选中的标签,是否显示加载动效或者分页器等等。

管理不断变化的 state 非常困难。如果一个 model 的变化会引起另一个 model 变化,那么当 view 变化时,就可能引起对应 model 以及另一个 model 的变化,依次地,可能会引起另一个 view 的变化。直至你搞不清楚到底发生了什么。state 在什么时候,由于什么原因,如何变化已然不受控制。 当系统变得错综复杂的时候,想重现问题或者添加新功能就会变得举步维艰。

Redux就是为了解决这个问题。

Redux三大原则

  1. 单一数据源:整个应用的状态数据(state)存储在一颗object tree中,并且这个object tree只存在于唯一一个store中;
  2. state是只读的:唯一改变state的方法就是触发action,action是一个用于描述已发生事件的普通对象;

    强制使用 action 来描述所有变化带来的好处是可以清晰地知道应用中到底发生了什么。如果一些东西改变了,就可以知道为什么变。action 就像是描述发生了什么的指示器。

  3. 使用纯函数来执行修改:为了描述action如何改变state tree,需要编写reducers。

    Reducer 只是一些纯函数,它将action和state串起来,接收先前的 state 和 action,并返回新的 state。

基础概念

Action

Action 是把数据从应用(译者注:这里之所以不叫 view 是因为这些数据有可能是服务器响应,用户输入或其它非 view 的数据 )传到 store 的有效载荷。它是 store 数据的唯一来源。一般来说你会通过 store.dispatch() 将 action 传到 store。举个栗子,添加一条TODO任务的action可能是这样的:

{type: "ADD_TODO",text: "Learn React Redux"
}

我们约定,action 内必须使用一个字符串类型的 type 字段来表示将要执行的动作。多数情况下,type 会被定义成字符串常量。当应用规模越来越大时,建议使用单独的模块或文件来存放 action。

Reducer

Reducers 指定了应用状态的变化如何响应 actions 并发送到 store 的,记住 actions 只是描述了有事情发生了这一事实,并没有描述应用如何更新 state。reducer 就是一个纯函数,接收旧的 state 和 action,返回新的 state:(previousState, action) => newState

下面以TODO List应用为例,给出一个reducer的实现代码:

function todoApp(state = initialState, action) {switch (action.type) {case SET_VISIBILITY_FILTER:return Object.assign({}, state, {visibilityFilter: action.filter})default:// 遇到未知的 action 时,一定要返回旧的 statereturn state}
}

注意:不要修改 state。 使用 Object.assign() 新建了一个副本。不能这样使用 Object.assign(state, { visibilityFilter: action.filter })因为它会改变第一个参数的值。你必须把第一个参数设置为空对象。你也可以开启对ES7提案对象展开运算符的支持, 从而使用 { …state, …newState } 达到相同的目的。

Store

Store 有以下职责:

  • 维持应用的 state;
  • 提供 getState() 方法获取 state;
  • 提供 dispatch(action) 方法更新 state;
  • 通过 subscribe(listener) 注册监听器;
  • 通过 subscribe(listener) 返回的函数注销监听器。

一个完整的示例:TODO List

你可以查看这篇文章阅读TODO List的完整示例代码。

2 React Redux

再次强调:Redux和React之间没有任何关系,Redux支持React、Angular、jQuery甚至是Javascript,只是redux和react更加搭配。

react-redux是Redux官方出的,用于配合React的绑定库。react-redux能够使你的React组件从Redux store中很方便的读取数据,并且向store中分发actions从而更新数据。
在这里插入图片描述

React Redux中两个重要的成员

react-redux中有两个重要的部分:Provider和connect

  • Provider能够使整个app都能获取到store中的数据
  • connect方法能够使组件跟store进行关联

Provider

Provider包裹在根组件最外层,使得所有的子组件都可以拿到state。Provider接受store作为props,然后通过context向下传递,这样react中任何组件都可以通过context获取到store。

import React from 'react'
import ReactDOM from 'react-dom/client'import { Provider } from 'react-redux'
import store from './store'import App from './App'// As of React 18
const root = ReactDOM.createRoot(document.getElementById('root'))
root.render(<Provider store={store}><App /></Provider>
)

connect

connect方便组件获取到store中的state。

http://www.ds6.com.cn/news/252.html

相关文章:

  • 广西建设厅考试网站首页百度推广助手app下载
  • 用dedecms织梦做中英文网站杭州做搜索引擎网站的公司
  • 网站制作论文总结在线刷seo
  • 中国做b2b外贸的网站有哪些如何自己建一个网站
  • 中国建设工程协会网站谷歌优化排名公司
  • 桃城网站建设广州代运营公司有哪些
  • 网站建设公司 枫子伽叩南京seo优化公司
  • 网站设计实施方案三门峡网站seo
  • 景德镇网站建设哪家最好百度sem竞价
  • 狮城app更多网站模板式自助建站
  • 湖南做网站磐石网络案例站长统计网站大全
  • 北京网站设计外包公司厦门百度竞价
  • 网站如何做信息表国家培训网官网
  • wordpress 返回列表网站推广关键词排名优化
  • 营销型网站百度网盘提取码入口
  • b2b网站有那些长沙网站排名推广
  • wordpress 自动摘要seo综合查询 站长工具
  • 做网站打电话怎么和客户说免费网站的软件
  • ps网站如何做烫金的文字武汉大学人民医院洪山院区
  • eefocus电子工程网seo排名方案
  • 杭州制作网页与网站上海排名优化推广工具
  • 有哪些好的做问卷调查的网站磁力猫
  • 亳州做网站大学生网络营销策划方案书
  • qq是腾讯还是阿里seo站长优化工具
  • 响应式网站一般做多大模板网站建站哪家好
  • 做网站的流程是什么济南做seo外包
  • 在印尼用哪个网站做电商网站建设方案及报价
  • 做商城网站建设哪家好推广软件排行榜前十名
  • 网站开发对企业有什么用高端网站建设南宁
  • php网站怎么做百度接单平台