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

网站建设成功案例宣传大数据下的精准营销

网站建设成功案例宣传,大数据下的精准营销,有哪些网站做汽车周边服务,九一人才网赣州找工作Redux 核心 Redux 介绍 Redux 是javaScript 状态容器#xff0c;提供可预测化的状态管理 Redux 工作流程 Actions#xff1a;对象#xff0c;描述对状态进行怎样的操作 Reducer#xff1a;函数#xff0c;操作状态并返回新的状态 Store#xff1a;存储状态的容器提供可预测化的状态管理 Redux 工作流程 Actions对象描述对状态进行怎样的操作 Reducer函数操作状态并返回新的状态 Store存储状态的容器JavaScript对象 View视图HTML页面 React 16 使用 Redux 安装 npm install --save redux创建 store 仓库 在 src 目录下创建一个 store 文件夹,然后在文件夹下创建一个 index.js 文件 import { legacy_createStore as createStore } from redux; import reducer from ./reducer;const store createStore(reducer, window.__REDUX_DEVTOOLS_EXTENSION__ window.__REDUX_DEVTOOLS_EXTENSION__()) // 创建数据存储仓库export default store在 store 文件夹下创建一个 reducer.js 文件 const defaultstate {list: [1,2,3,4,5,6],inpuValue: }export default (state defaultstate) {return state; }在页面中使用 在 src 目录下创建 TodoList.js 页面 在 constructor 引入 this.statestore.getState();使用 this.state.list通过 dispatch 修改里面的值 store.dispatch({type: changeList,value: newList })在 reducer.js 添加对应的方法 const defaultstate {list: [1,2,3,4,5,6],inpuValue: }export default (state defaultstate, action) {switch(action.type) {case changeList:return {...state,list: action.value}default:return state;} }在 constructor 添加 订阅Redux的状态 this.storeChange this.storeChange.bind(this) store.subscribe(this.storeChange) 编写storeChange方法 storeChange(){this.setState(store.getState()) }完整代码 import React, { Component } from react; import store from ./storeclass TodoList extends Component {constructor(props){super(props)this.statestore.getState();this.storeChange this.storeChange.bind(this)store.subscribe(this.storeChange) }handleChange(){this.setState({inputValue:this.inputRef.value})}handleAdd() {let newList this.state.listnewList.push(this.inputRef.value)store.dispatch({type: changeList,value: newList})this.setState({inputValue: })}handledel(index) {const list this.state.listlist.splice(index, 1)store.dispatch({type: changeList,value: list})}storeChange(){this.setState(store.getState())}render() { return ( divdivinput ref{(inputRef){this.inputRefinputRef}} value{this.state.inputValue} onChange{handleChange.bind(this)} /button onClick{handleAdd.bind(this)}新增/button/div{this.state.list.map((item, index) {return (div key{index}p{item}span onClick{() handledel(index).bind(this)} 删除/span/p/div)})}/div);} }export default TodoList;React 18 使用 Redux 安装、创建仓库都与16一样 使用 正常引入用一个变量接收 import store from ./storeconst state store.getState()使用的时候 直接state.xxx 就能使用 const items state.list.map((item, index) {return (div key{index}p{item}span onClick{() handledel(index)} 删除/span/p/div)})修改 一样通过 dispatch store.dispatch({type: changeList,value: list })为了能让页面实时更新必须手动更新 使用 react自带的 useEffect 方法通过 subscribe 监测store更新的函数 useEffect(() {// store.subscribe()是redux提供的监测store更新的函数store.subscribe(() {// 当store数据更新后执行 setUpdate() 组件重新加载实现界面store数据更新setUpdate({})})})const [update,setUpdate] useState({})完整代码 import React, { useRef, useState, startTransition, useEffect } from react; import store from ./storeconst TotoList () {const inputRef useRef()const state store.getState()const [update,setUpdate] useState({})const [value, setValue] useState()const items state.list.map((item, index) {return (div key{index}p{item}span onClick{() handledel(index)} 删除/span/p/div)})const handleChange () {startTransition(() {setValue(inputRef.current.value)})}const handleAdd () {let newList state.listnewList.push(inputRef.current.value)store.dispatch({type: changeList,value: newList})setValue()}const handledel (key) {const list state.listlist.splice(key, 1)store.dispatch({type: changeList,value: list})}useEffect(() {// store.subscribe()是redux提供的监测store更新的函数store.subscribe(() {// 当store数据更新后执行 setUpdate() 组件重新加载实现界面store数据更新setUpdate({})})})return (divdivinput ref{inputRef} value{value} onChange{handleChange} /button onClick{handleAdd}新增/button/div{items}/div) }export default TotoList;
http://www.hkea.cn/news/14448847/

相关文章:

  • 网站设计机构排行榜seo价格是多少
  • 网站12栅格系统怎么做做网站的专业术语
  • 网站开发工程师 酷网页设计版权代码
  • 创意网站建设设计公司天津营销型网站建设费用
  • 怎么使用网站上的模板跨境电商平台排名榜
  • 烟台公司建网站东莞建筑公司排名
  • 怎样增加网站浏览量wordpress主题cute
  • wordpress 锚点应用徐州百度快照优化
  • 山西省建设主管部门网站招远网站建设联系电话
  • 做简历的网站 知乎厦门知名做企业网站设计的公司
  • 手机做网站价格徐州万网网站建设
  • 扁平化 网站 模板深圳市工程造价信息网
  • 网站制作成品免费网络营销推广方案案例
  • wp如何做网站地图wordpress后台登陆很慢
  • 服务器不能访问网站wordpress修改邮箱
  • 小规模网站开发税率网站新闻编辑怎么做
  • 游戏类企业网站模板哪些网站的做的好看
  • 同步wordpress站点网站广告形式
  • 外贸网站建设需要注意什么深圳做营销网站公司
  • 站外推广策划书凡科互动网站
  • html5 网站案例太原哪个网站制作最好用
  • 高校思政专题网站建设电商网页设计师
  • 大连企业建站程序wordpress 取中等大小
  • 办公室装修公司费用360seo关键词优化
  • 政务网站建设 紧急通知织梦模板首页修改教程
  • 天汇大厦网站建设公司个人备案可以做哪些网站
  • 网站版本功能列表公司网站制作
  • 网站 cms重庆人才网
  • 通桥小学的网站建设免费关键词搜索引擎工具
  • 网站建设代码走查如何防止网站挂黑链