回调,是一种机制,同时也是一种设计模式。
我们定义一个函数,让能够回调
import _products from './products.json'const TIMEOUT = 100const getProducts = (cb, timeout) => setTimeout(() =cb(_products), timeout || TIMEOUT )
这个函数的作用是需要传递一个 callback 函数作为参数。该 callback 函数具有一个参数 _products,可以对 procucts 进行处理。
那么回调函数本质是什么?简单来讲就是通过封装一个参数为回调函数的函数,对某些相关逻辑进行完善。比如这里虽然知道要处理 _products,但是不知道怎样去处理。那么定义这样一个函数,等到调用时再传递具体的处理逻辑 callback。
getProducts(products => { dispatch(receiveProducts(products)) })