Flutter面试-居然有人仅用provider做状态管理?

437 阅读2分钟

杭州JS侠科技

  1. 聊聊其他跨平台方案与Flutter的区别。目前存在市面上的应该是React Native和Uni-app。(核心 Flutter是skia引擎过去,现在是Impeller)。
  2. provider包里面的consume和select有什么区别?(consume 用于从 Provider 中获取数据,而不监听其变化。select 用于从 Provider 中选择性地获取数据,并可以基于原始值创建新的值。当原始 Provider 的值发生变化时,如果这个变化影响了 select 函数的结果,那么新的 Provider 也会触发重建。)
  3. StatefulWidget的常用生命周期有那些?生命周期被调用时间是什么时候?
  4. 在initState中可以调用setState吗?假如调用了会怎么样?(编译器报错不通过,widget树话没有构建完成-面试官的回答)。
  5. Flutter的三棵树。
  6. 自定义组件多吗?
  7. 线上的日志收集如何做的?
  8. 更改字段导致线上项目闪退这个问题最后是怎么解决的?(简历里面写了)。初始值要么就是空安全。
  9. Flutter的key你用过那些,了解那些?什么场景需要用key。

杭州JS侠科技-面试感受

1、面试官还是非常注重基础概念的理解。类似key,widget,provider的用法相关,还有自定义组件的实现。

2、面试官关注你对跨平台方案的理解和底层原理要了解。

3、面试官关注日志收集可能是目前的业务需求。

公司目前还是仅用provider做状态管理。确实不够好。目前是我了解的第一家,现在都2024年了还在仅用provider做状态管理的。

以上面试问题,您都可以在文心一言和chatgpt上找到答案。