2017-06-21 67 views
0

我對應用程序使用react + redux,並試圖根據當前正在查看的頁面的索引返回操作。這些按鈕在所有頁面上都是通用的,但取消和保存操作需要根據頁面做不同的事情。這是我目前嘗試(沒有成功):在反應組件中動態設置函數

const cancelAction = (slideIndex, actions) => { 
    switch(slideIndex){ 
    case 0: return actions.cancelSlide0() 
    case 1: return actions.cancelSlide1() 
    case 2: return actions.cancelSlide2() 
    } 
} 

const saveAction = (slideIndex, actions) => { 
    switch(slideIndex){ 
    case 0: return actions.saveSlide0() 
    case 1: return actions.saveSlide1() 
    case 2: return actions.saveSlide2() 
    } 
} 

const buttons = (actions, slideIndex) => (
    <div> 
    <RaisedButton 
     onTouchTap={() => cancelAction(actions, slideIndex)}   
     label={'CANCEL'} 
     > 
    </RaisedButton> 
    <RaisedButton 
     onTouchTap={() => saveAction(actions, slideIndex)} 
    label={'SAVE'} 
    > 
    </RaisedButton> 
    </div> 
) 

我該如何正確地實現這種類型的邏輯?

+0

不工作?它看起來不錯... –

+0

F12,控制檯中的任何錯誤? – mkaatman

+0

你有沒有混淆你的參數?你可以將它叫做 'cancelAction(actions,slideIndex)'' – Grandas

回答

0

拍攝 - 你們是現場。由於某些愚蠢的原因,我沒有注意到控制檯。其中一個常數名稱存在拼寫錯誤,一旦我改變了這一點,一切都開始按預期工作。謝謝!