Segue a solução que dei para a listagem dos autores e livros. Mostrarei apenas para autores, mas o de livros é o mesmo. Alterando apenas o campo e texto a ser exibido.
Arquivo Autores.js
import React, {Component, Fragment} from 'react';
import 'materialize-css/dist/css/materialize.min.css';
import Header from './Header';
import ListaCampo from './ListaCampo';
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'
      }
    ]
  };
  render() {
    return (
      <Fragment>
        <Header />
        <div className="container mb-10">
          <h4>Nossas  autoras e autores</h4>
          <ListaCampo autores = { this.state.autores } campo = 'nome' />
        </div>
      </Fragment>
    );
  }
}
export default Autores;
Arquivos ListaCampo.js
import React, { Component } from 'react'
const Campos = props => {
  const linhas = props.autores.map((linha, index) => {
    return (
      <p key={ index }>{linha[props.campo]}</p>
    );
  });
  return (
  <div>{linhas}</div>
  );
}
class ListaCampo extends Component {
  render() {
    const { autores, campo } = this.props;
    return(
      <Campos autores = { autores } campo = { campo } />
    );
  }
}
export default ListaCampo; 
             
            