【问题标题】:What is a react callback in scalajs-react?scalajs-react 中的反应回调是什么?
【发布时间】:2017-02-02 18:47:49
【问题描述】:

Here是这样写的:

包括一个 CallbackTo[A] 类型,它捕获指定的效果 在 React 回调中使用。

在这种情况下什么是 React 回调?

【问题讨论】:

    标签: reactjs scala.js scalajs-react


    【解决方案1】:

    据我所知,只是回调的正常含义——响应事件而调用的函数。因此,例如在React Component 中,有许多像componentDidMount 这样的函数在组件生命周期的不同阶段被调用。在 scalajs-react 中,这些被实现为返回 CallbackTo[Unit] 的函数,由于类型别名,它也可以写为 Callback。例如,将componentDidMount 回调添加到ReactComponentB 时,我们使用def componentDidMount(f: DuringCallbackM[P, S, B, N] => Callback): ReactComponentB[P, S, B, N]

    在 javascript 中,组件应立即在 componentDidMount 函数(或其他回调)中运行事件的任何副作用。在 scalajs-react 中,组件将这些效果包装在 Callback 中,然后返回。这允许 scalajs-react 系统延迟 Callback 中代码的实际执行 - 这稍后通过调用 runNow() 来完成。这也意味着Callbacks 使用mapflatMap>> 等组合在一起。除非最终调用runNow(),否则它们将不会运行,因此如果您没有将Callback 返回到其他代码以稍后执行,仅创建它不会执行任何操作。

    much more about Callback in the docs

    【讨论】:

      猜你喜欢
      • 2017-02-16
      • 2016-01-12
      • 1970-01-01
      • 2017-08-13
      • 2022-11-14
      • 1970-01-01
      • 1970-01-01
      • 2011-01-04
      • 2011-01-09
      相关资源
      最近更新 更多