2017-08-07 11 views
1

私はReact/Reduxアプリケーションで作業しており、BootstrapTableも使用しています。BootstrapTableのdataFormatメソッドでどのようにしてpropsにアクセスできますか

dataFormatメソッドでは、私は小道具も渡す必要がありますか?今、私のフォーマット方法は、次のようになります。

function linkFormatter(cell, row) { 
    //Logic 
} 

私が使用してみました:

let self = this; 

this.props.isStatatusActiveとして小道具にアクセスするが、それはまた私にエラーました:isStatatusActive is undefined.

任意の勧告を?

+0

あなたには、いくつかのより多くのコンテキスト –

+0

を提供することができますuがより多くの何の情報が必要ですか? – Anna

+0

質問:「dataFormatを使用して余分なデータをフォーマットするにはどうすればよいですか?」、[このリンク](https://allenfang.github.io/react-bootstrap-table/advance.html)が役立ちます。 – petithomme

答えて

1

私が正しくあなたの質問を理解し、あなたがセルとテーブルのだけでなく、あなたの小道具ではないだけにアクセスできるようにしたい場合は、this articleで本当に良い例があります。

formatExtraDataはあなたが探しているものです。

function enumFormatter(cell, row, enumObject){ 
return enumObject[cell]; 
} 

export default class ExtraDataColumnFormatTable extends React.Component{ 
    render(){ 
     return (
      <BootstrapTable data={products} > 
       <TableHeaderColumn dataField="id" isKey={true}>Product ID</TableHeaderColumn> 
       <TableHeaderColumn dataField="name">Product Name</TableHeaderColumn> 
       <TableHeaderColumn dataField="quality" dataFormat={enumFormatter} formatExtraData={qualityType}>Product Quality</TableHeaderColumn> 
       <TableHeaderColumn dataField="inStock" dataFormat={enumFormatter} formatExtraData={inStockStatus}>Product Stock Status</TableHeaderColumn> 
      </BootstrapTable> 
     ); 
    } 
}; 


あなたはおそらく `this.propsを送信することができます。直接そのメソッドに:

formatExtraData={this.props}

そしてあなたのフォーマッタは、次のようになります。

function formatter(cell, row, props) { 
    // Logic 
} 
関連する問題