compose的返回值还是一个函数,调用这个函数所传递的参数将会作为compose最后一个参数的参数,从而像'洋葱圈'似的,由内向外,逐步调用。
看下面的例子:
import { compose } 'redux'; // function f const f = (arg) => `函数f(${arg})` // function g const g = (arg) => `函数g(${arg})` // function h 最后一个函数可以接受多个参数 const h = (...arg) => `函数h(${arg.join('_')})` console.log(compose(f,g,h)('a', 'b', 'c')) //函数f(函数g(函数h(a_b_c)))
所以最后返回的就是这样的一个函数 compose(fn1, fn2, fn3) (...args) = > fn1(fn2(fn3(...args))) 。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。