Como foi pedido na aula de react, estava tentando resolver sozinho o problema de criar a tabela de autores e livro para serem renderizados dinamicamente em uma roda específica que lista-os.
A classe autores:
import React, { Fragment, Component } from 'react';
import Header from './Header';
import TableInfo from './TableInfo';
class Autores extends Component {
state = {
autores: [
{
nome: 'Paulo',
livro: 'React',
preco: '1000'
},
{
nome: 'Daniel',
livro: 'Java',
preco: '99'
},
{
nome: 'Marcos',
livro: 'Design',
preco: '150'
},
{
nome: 'Bruno',
livro: 'DevOps',
preco: '100'
},
{
nome: 'Teste',
livro: 'Full Stack',
preco: '1000'
}
]
}
render() {
return (
<Fragment>
<Header />
<h1>Lista de Autores</h1>
<TableInfo autores={this.state.autores}/>
</Fragment>
);
}
}
export default Autores;
TableInfo:
import React from 'react';
const TableInfo = props => {
let linhas = props.infos.map((elem) =>
<tr key={elem.id}>
{props.nome.map((autor) => {
<td key={`${elem.id} ${elem[autor]}`}>{elem[autor]}</td>
})}
</tr>
);
return(
<tbody>
{linhas}
</tbody>
);
}
export default TableInfo;
A ideia foi semelhante à resolução do professor. Criar um render genérico, já que autores e livros são bem semelhantes. Porém recebo este erro:
" Expected an assignment or function call and instead saw an expression"
Gostaria de saber o que foi feito de errado e uma solução que desenvolva a partir dessa lógica. (isso se a lógica estiver certa)