2016-11-16 83 views
1

我有下面的代碼不工作插值JavaScript表達式到一個對象,它是一個陣營支撐

tabs.map(tabs, (tab) => (
    <Tab options={{'option':{tab.key === 'value'}}}> 
     ... 
    </Tab> 
)); 

我的問題是some.key,這是因爲我顯然不插此拋出一個錯誤正確表達。

有誰能告訴我我需要做什麼嗎?我無法在單獨的表達式中完成此操作,因爲options取決於映射的tab

+0

' '選項':{tab.key === '值' }'無效,這可能會導致您的問題。你是否希望它評估爲「選項」:true'(或false,取決於值)?如果是這樣,你需要「選項」:tab.key ==='value''。 – Aurora0001

回答

2

這是對象文本無效的語法。另外,假設tabs是可迭代的,map()的第一個參數應該是映射函數。

下面應該工作:

tabs.map(tab => (
    <Tab options={{option: tab.key === 'value'}}> 
     ... 
    </Tab> 
)); 

爲了使它更清潔,定義options呈現組件之前:

tabs.map(tab => { 
    const options = {option: tab.key === 'value'}; 

    return (
     <Tab options={options}> 
      ... 
     </Tab> 
    ); 
}); 
相關問題