首页 > 其他分享 >Redux 面试题

Redux 面试题

时间:2023-05-03 11:45:03浏览次数:42  
标签:面试题 redux reducer action state 组件 Redux

1、什么是Redux?

Redux 用于全局的状态管理

 

2、为什么在React项目中要使用Redux?

因为React是单向数据流的,数据只能从父组件通过props流向子组件,但如果子组件要想修改父组件的值,就只能通过给绑定函数传递参数的形式来修改,一旦项目中数据比较复杂时,这种形式会搞得一团糟,所以需要Redux的协助,帮助其更好的管理项目中复杂的数据问题

3、Redux的三大核心原则?

单一数据源:整个应用的state被存储在reducer中,并且这个reducer只存在于唯一一个store
state是只读的:唯一能改变state的就是action,action是一个用于描述已发生事件的对象,通过store中的dispatch方法来发送action,store.dispatch(action)
使用纯函数(reducer)来执行修改:reducer是一个纯函数,它接受老的state,action,并且返回一个新的state

4、为什么需要redux中间件?

默认情况下,redux只能处理同步数据流。但是实际项目开发中,状态的更新、获取、通常是使用异步操作来实现的。

 

5、常用的redux中间件有哪些?

redux-thunk:处理异步操作,主要作用就是可以使action可以变成函数形式,接收两个参数dispatch、getState
redux-promise: 处理异步操作
redux-logger:打印日志,主要作用在控制台打印输出新老state等信息

6、Redux有什么缺点?

一个组件所需要的数据,必须由父组件传过来,而不能像flux中直接从store取。 当一个组件相关数据更新时,即使父组件不需要用到这个组件,父组件还是会重新render,可能会有效率影响,或者需要写复杂的shouldComponentUpdate进行判断。

 

7、 Store存储在Redux中的意义是什么? 

store 是一个JavaScript对象,它可以保存应用程序的状态,并提供一些帮助方法来访问状态、分派操作和注册侦听器。 

应用程序的整个状态/对象树保存在单个存储中。 因此,Redux非常简单和可预测。我们可以将中间件传递给存储来处理数据,以及保存更改存储状态的各种操作的日志。所有操作都通过reduce返回一个新的状态。

标签:面试题,redux,reducer,action,state,组件,Redux
From: https://www.cnblogs.com/gqx-html/p/17368876.html

相关文章

  • 网络协议面试题
    1.TCP和UDP的区别?答:TCP是面向连接的传输协议,提供可靠的数据传输和错误检测,适用于对可靠性要求较高的场景,如文件传输,网页访问等;UDP是无连接的传输协议,不保证传输的可靠性,适用于对实时性要求较高的场景,如视频会议,音频传输等。2.OSI参考模型和TCP/IP协议模型的区别是什么?......
  • React 中 Router的相关面试题
    一、请你说说react的路由是什么?React的路由是纯前端的路由,就是根据hash或browserpath的变化,框架内封装好了方法,可以自由的切换DOM展示,来模拟页面或局部页面被替换的目的;让浏览器不用刷新,也能获取想要的页面结构,保存内存数据,提升用户体验 二、React-Router实现原理?当url发......
  • 面试题5-2
    一、硬链接与软链接的区别?​ 硬链接是具有相同inode号的不同名字的文件,删除一个硬链接文件不影响具有相同inode的文件。硬链接只能是对同一文件系统中的文件进行链接。不能对目录进行创建。软链接有自己的inode。文件用户数据块里面存放的内容就是文件的绝对路径。软链接可以用来......
  • Less 相关面试题
    一、Less是什么?Less(LeanerStyleSheets的缩写)是一门向后兼容的CSS扩展语言。二、声明变量@变量名:变量值 三、less封装函数less还可以像js一样的来封装函数,需要时可以直接调用。.borderName(@px){border-radius:@px;}.box5{.borderName(10px)}......
  • 2023前端面试题二
    图片png无损压缩,尺寸体积要比jpg的大,适合做小图标jpg采用压缩算法,有一点失真,比png体积要小,适合做中大图片gif一般是做动图的webp同时支持有损或者无损压缩,相同质量的图片,webp具有更小的体积css的盒子模型标准盒子模型margin/border/padding/contentie盒子模型marg......
  • 17、架构师面试题系列之Maven面试专题及答案(18题)
    架构师面试题之Maven专题篇一、Maven有哪些优点和缺点优点如下:1.简化了项目依赖管理:2.易于上手,对于新手可能一个"mvncleanpackage"命令就可能满足他的工作3.便于与持续集成工具(jenkins)整合4.便于项目升级,无论是项目本身升级还是项目使用的依赖升级。5.有助于多模块项目的开发,......
  • SpringBoot高频面试题
    Springboot的优点内置servlet容器,不需要在服务器部署tomcat。只需要将项目打成jar包,使用java-jarxxx.jar一键式启动项目SpringBoot提供了starter,把常用库聚合在一起,简化复杂的环境配置,快速搭建spring应用环境可以快速创建独立运行的spring项目,集成主流框架准生产环境的......
  • #yyds干货盘点# LeetCode面试题:解码方法
    1.简述:一条包含字母 A-Z 的消息通过以下映射进行了 编码 :'A'->"1"'B'->"2"...'Z'->"26"要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,"11106" 可以映射为:"AAJF" ,将消息分组为 (11106)"KJF......
  • 美团面试题:慢SQL有遇到过吗?是怎么解决的?
    大家好,我是田维常,可以叫我老田,也可以叫我田哥。2017年的时候,我刚去上海,朋友内推我去美团面试,之前我也写过一个一篇文章,也是在美团面试中遇到的:美团面试题:Strings=newString("111")会创建几个对象?关于慢SQL,我和面试官扯了很久,面试官也是很谦虚的,总是点头,自己以为回答的还可以。......
  • Java程序员从阿里、京东、美团面试回来,这些面试题你会吗?(文末福利)
    hi大家好我是田哥今天,给大家分享一些面试干货。我们每次面试基本上都是超过一个小时的,面试官肯定会问很多问题,其实也不是需要我们全部能回答上来。但是,关键点如果回答不上来,就算你其他的回答的不错,也没用,最终offer还是不会给你的。好吧,话不多说,我们直接开始:自我介绍很多人觉得自......