安全使用useScrollController吗? 扑钩

问题描述

以下代码是否安全?

class SomeWidget extends HookWidget {

  @override
  Widget build(BuildContext context) {
    final controller = useScrollController();
    controller.addListener(_someCallback);

    return ...;
  }
}

我专门指的是addListener。在this ResoCoder挂钩教程中,他在自定义挂钩的initHook函数添加了侦听器。

我知道ResoCoder编写了自定义钩子来处理scrollController ...我对控制器侦听器的行为感到更加好奇(我不知道侦听器允许和不允许什么)。我可以从中获取关于它们的任何资源都是很好的。

谢谢:)

解决方法

诸如添加侦听器之类的副作用不应直接在import os print( len( list( filter(None,map(lambda x: x[0] if x[0].endswith('QGIS') else None,os.walk('.')))))) 内部完成。如果重新构建了小部件,则将导致再次添加侦听器

相反,您可以使用build

useEffect

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...