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

东营兴通建设工程公司网站做网站 最好的开源cms

东营兴通建设工程公司网站,做网站 最好的开源cms,浙江信息港,手机端网页界面设计学习 zustand https://github.com/pmndrs/zustand告别繁杂的状态管理:Zustand 的简洁之道Zustand 状态库:轻便、简洁、强大的 React 状态管理工具关于 zustand 的一些最佳实践 代码库 https://gitee.com/nian_zuo_chen/learnrect/tree/master/zustand 安…

学习 zustand

  • https://github.com/pmndrs/zustand
  • 告别繁杂的状态管理:Zustand 的简洁之道
  • Zustand 状态库:轻便、简洁、强大的 React 状态管理工具
  • 关于 zustand 的一些最佳实践

代码库 https://gitee.com/nian_zuo_chen/learnrect/tree/master/zustand

安装

npm install zustand

常用

  • create 创建一个 store
  • set 函数修改 store 内容
  • get 函数,获取当前 store 中内容
  • store.getState() 静态获取当前 store 的所有内容
  • store.subscribe(listener) 订阅 store 变更,任意一个值变更,都会执行 listener
  • useShallow 可以开启浅比较,对象属性变化不触发

中间件

  • subscribeWithSelector 在创建 store 时候增加,允许订阅的时候增加选择器,来限制监听的范围 listener 中返回的数据和选择器选择的内容一致。
  • devtools 在创建 store 时候增加,结合 redux-dev-tools 浏览器插件可以查看 store 变化
  • 处理持久化,persist 开启持久化,createJSONStorage 使用 JSON.stringifyJSON.parse把值设置为 JSON 字符串进行存取

疑问

  • zustand.set 的返回值直接覆盖全部 state 还是做数据合并到 state 中?
    由第二个参数控制,默认是 false 标识数据合并,当返回 true 时候,是直接覆盖。

  • 当一次从 store 中获取多个数据时候,建议使用 zustand/react/shallow 有啥用?
    可以进行浅比较,避免没必要的渲染,和所有的浅比较一样,也会引入数据变化无感知的困惑,可以结合 devtools 来检查

  • 对比 UpdateObj.tsxUpdateObj2.tsxShallowEqual.tsx 中获取 store 数据的方式,为什么只有 UpdateObj.tsx 可以监听到变化?

    • UpdateObj.tsxUpdateObj2.tsx 都没有使用 useShallow
      但是 UpdateObj2.tsx(state) => stat.user 每次返回的都是 store 中的 user,所以对组件而言路径地址没变,所以不触发刷新。
      UpdateObj.tsx(state) => ({user: stat.user}) 每次返回的都是一个新的 {user: xxx} 对象,地址一直在变,所以触发刷新
    • UpdateObj.tsxShallowEqual.tsx 获取数据一样,每次都返回一个新的 {user: xxx} 对象,但是 useShallow 内的 shallow 算法是 Object.keys 一致,以及第一层的 obj[key] 的值一致(使用 Object.is 比较),就算做未变更,所以不触发刷新。在这两个组件中 {user: xxx} 虽然是两个对象,但是它们 kyes 一样都是 ["user"],然后指向的都是 stroe.user 这个地址一致,所以算作未变化。这要小心使用呀。shallow.ts 源码
http://www.yayakq.cn/news/433980/

相关文章:

  • 建站系统主要包括对二次网站开发的认识
  • 微信小程序开发文档上海牛巨微seo关键词优化
  • 网站续费一年多少钱重庆平台网站建设企业
  • 建站兔软件下载建设电子票务系统的网站需要多少钱
  • 企业做网站的作用河北网站建设流程
  • 怎样用vs做简单网站三合一网站建设 万网
  • 做行业网站赚钱域名解析网站打不开
  • 网站建设你的选择建设游戏网站
  • 网站开发有什么文化传媒网站建设
  • 中国制造网网站类型Wordpress与dw
  • 莱芜做网站wordpress加群插件
  • 微信小游戏代理平台抖音seo优化
  • 无锡网站建设价格个人网站主机的配置
  • 做网站与做游戏那个好网站制作培训一般要多少钱
  • 手机网站开发注意最好建站网站
  • 网站怎么做百度关键字搜索wordpress修改手机模板
  • 企业网站策划方案中国品牌网是什么网站
  • 建站公司合同模板网站制作xiu021
  • 手机网站开发公司电话人力资源服务外包
  • 长安手机网站建设建设银行网站怎么查自己账号吗
  • soho在哪里做网站世界著名网站开发语言
  • 临沂企业网站开发官网上海网站建设 迈
  • 武夷山网站设计哪些网站是用c语言做的
  • 企航互联提供天津网站建设wordpress 4 中文手册
  • 西宁公司网站建设万网网
  • vs网站模板网站由那些组成
  • 汇鑫网站建设方便.net网站建设实例
  • 商城网站需要多少空间石家庄网站制作官网
  • 为外国人做非法网站get写作网站
  • Wordpress垂直类目站模版自己建个网站做优化