【发布时间】:2018-05-16 23:00:08
【问题描述】:
我在水平排序获取的 API 数据的列时遇到了问题。我正在尝试将从 API 获取的数据打印到表中。无论如何,行水平打印得很好,但是我用于行的函数 this.state.data.map() 对列的功能不同。我认为这是 ES6 标准,但我不确定。 Here is my printed issue.
这是我的代码示例:
class App extends React.Component
{
constructor()
{
super();
this.state = {
rows: [],
columns: []
}
}
componentDidMount()
{
fetch( "http://ickata.net/sag/api/staff/bonuses/" )
.then( function ( response )
{
return response.json();
} )
.then( data =>
{
this.setState( { rows: data.rows, columns: data.columns } );
} );
}
render()
{
return (
<div id="container" className="container">
<h1>Final Table with React JS</h1>
<table className="table">
<thead> {
this.state.columns.map(( column ) => (
<tr>
<th>{column[0]}</th>
<th>{column[1]}</th>
<th>{column[2]}</th>
<th>{column[3]}</th>
</tr>
) )}
</thead>
<tbody> {
this.state.rows.map(( row ) => (
<tr>
<td>{row[0]}</td>
<td>{row[1]}</td>
<td>{row[2]}</td>
<td>{row[3]}</td>
</tr>
) )
}
</tbody>
</table>
</div>
)
}
}
ReactDOM.render( <div id="container"><App /></div>, document.querySelector( 'body' ) );
如果我为“th”元素赋予值,我能够打印硬编码,但我想动态打印它,以防 API 中的数据已更改。
欢迎您直接向我的 Repo 投稿:Fetching API data into a table
Here is how looks like my example, when columns values has been hardcoded within 'th' elements.
任何建议将不胜感激!
【问题讨论】:
-
您能否也发布硬编码列名时的外观?
-
嗨@NanduKalidindi 是的,我当然更新了问题描述。见这个例子i.stack.imgur.com/FuW9Q.jpg
标签: javascript reactjs babeljs jsx