2016-03-26 19 views
3

kimse kodu Başlangıçta bir işlevi dönüyor ama ilk sonra iki ileri şişman okları vardır neden alamadım hereaçıklama

return() => next => action => { 
    const callAPI = action[CALL_API]; 

    if (typeof callAPI === 'undefined') { 
    return next(action); 
    } 

    let { endpoint } = callAPI; 
    const { types, bailout } = callAPI; 

ne yaptığını açıklayabilir.

cevap

2

Ok işlevinin yalnızca bir parametresi varsa, bunun etrafındaki parametre isteğe bağlıdır. Onları daha iyi anlamak için yeterli parantezin olması yeterli.

return() => (next) => (action) => { 

bu döndürür bir parametre, next kabul başka bir işlevi çağrılan bir fonksiyon, döner. Şimdi bu işlev çağrıldığında, başka bir parametre döndürür, bu da başka bir parametre action kabul eder. Aşağıdaki kod gibi tekrar yazılabilir O

1

,

return function() { 
    return function(next) { 
     return function(action) { 

dış fonksiyon parametresi next olan bir işlev döndürür ve bu parametreye action başka bir işlevi döndüren gibi görünüyor. Verdiğiniz bağlantıdaki bu kod küçültülmedi, ancak gizlenmiş gibi gözüküyor.