Redux 与 Flux

共 17 题
#

1. Redux Toolkit Query(RTK Query)

A 它无法与 Redux store 集成
B 它不支持缓存
C 它必须手写 action 与 thunk
D createApi 定义端点并自动生成 hooks、缓存与失效机制 ✓ 正确答案
#

2. Redux Toolkit createSlice/createAsyncThunk 在大型状态管理的工程价值

A 两者都只能处理同步逻辑
B createSlice 无法自动生成 action
C createAsyncThunk 会破坏 reducer 纯函数性
D createSlice 集中定义 state/reducer/action,createAsyncThunk 封装异步状态流转 ✓ 正确答案
#

3. RTK Query 的 createApi 与 injectEndpoints 在模块化 API 设计的协作

A 端点只能集中在一个文件
B 每个模块必须创建独立 createApi
C injectEndpoints 会破坏缓存一致性
D injectEndpoints 让端点按模块注入,共享统一缓存与标签体系 ✓ 正确答案
#

4. Redux Toolkit 的 listenerMiddleware 替代 saga/thunk 的工程化应用

A 它只能处理同步逻辑
B 它监听 action 触发副作用,比 saga 更简洁、可取消 ✓ 正确答案
C 它替代了所有 reducer
D 它无法监听特定 action
#

5. RTK Query 作为服务端缓存的能力

A 它无法缓存数据
B 每个组件都独立请求
C 它只支持同步数据
D 同一 queryKey 的查询共享缓存,invalidateTags 实现失效重取 ✓ 正确答案
#

6. Redux 的 action 设计与 FSA(Flux Standard Action)规范在大型团队的工程价值

A FSA 要求 action 必须有嵌套结构
B FSA 禁止 meta 字段
C FSA 规定 action 为 type/payload/meta/error 的扁平结构,便于协作与工具链处理 ✓ 正确答案
D FSA 只适用于小型团队
#

7. MobX 的响应式与 Observable 模式

A 需要手动声明每个组件的依赖
B observable 在 get 时收集依赖、set 时通知,组件自动更新 ✓ 正确答案
C computed 不能做派生计算
D MobX 无法与 React 集成
#

8. reselect 的 createSelector 与缓存键的工程取舍

A 每次渲染都重新计算
B 它无法缓存结果
C 只有当输入选择器变化时才重算并缓存结果,保证引用稳定 ✓ 正确答案
D 缓存键与输入无关
#

9. Redux DevTools Extension 的时间旅行与 Action replay 调试

A 它只能查看当前状态
B 时间旅行依赖副作用
C 它无法重放 action
D 它记录 action 与状态快照,可回退/前进与重放 action ✓ 正确答案
#

10. Redux 的中间件机制,dispatch 的增强与副作用隔离?

A 中间件会改写 reducer 的纯函数性
B 中间件包裹 dispatch 处理副作用,reducer 保持纯函数 ✓ 正确答案
C 中间件无法组合
D 副作用必须在 reducer 中处理
#

11. combineReducers 与 reducer 组合,状态切片(slice)的划分边界、跨 slice 依赖的协调方式与大型 store 的组织演进?

A 一个 reducer 可以直接读取其他 slice 状态
B 每个 reducer 管理独立的切片,按业务领域划分,跨 slice 依赖通过 action 协调 ✓ 正确答案
C combineReducers 会让状态无法分割
D slice 划分与业务无关
#

12. Redux DevTools 时间旅行调试在生产环境禁用的安全策略

A 通过环境变量条件启用,保护敏感数据并避免性能开销 ✓ 正确答案
B 生产环境应照常启用 DevTools
C DevTools 不会记录敏感数据
D 禁用 DevTools 会导致状态不可预测
#

13. MobX 6 的 makeObservable/makeAutoObservable 在 class 组件的响应式模式

A 它要求每个属性手动声明
B 它无法用于 class 组件
C 它自动把属性推导为可观察、getter 为 computed、方法为 action ✓ 正确答案
D 它禁用了响应式
#

14. Flux 架构的单向数据流与现代状态库的关系

A Flux 允许双向数据流
B Redux 完全抛弃了 Flux 思想
C 单向数据流使状态不可预测
D Flux 提出单向数据流,Redux 继承其思想并简化,现代状态库沿用该原则 ✓ 正确答案
#

15. Redux 范式的可预测性与团队规模匹配

A 团队规模与 Redux 选择无关
B Redux 只适合小团队
C Redux 的可预测性来自副作用
D 大型团队/复杂状态时 Redux 的约束与工具链收益明显,小型项目可能过重 ✓ 正确答案
#

16. Redux Toolkit 与 Immer,不可变更新的简化?

A createSlice 内置 Immer,reducer 可直接修改 draft,自动产生不可变状态 ✓ 正确答案
B Immer 会破坏不可变性
C reducer 必须手写展开运算符
D Immer 只能用于 class 组件
#

17. Redux 状态规范化(normalized state)在实体关系(用户-文章-评论)中的工程价值,与嵌套状态的取舍及 selector 重组?

A 嵌套状态更能避免数据重复
B 规范化无法用 id 关联实体
C 规范化状态更新更困难
D 实体按 id 扁平存储,更新单一实体全局生效,用 selector 重组视图 ✓ 正确答案