Show.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import * as React from 'react';
  2. import {graphql, createFragmentContainer} from 'react-relay';
  3. import {Link} from 'react-router-dom';
  4. // eslint-disable-next-line @typescript-eslint/camelcase, camelcase
  5. import {Show_pokemon} from '../../../__generated__/Show_pokemon.graphql';
  6. interface Props {
  7. // eslint-disable-next-line @typescript-eslint/camelcase, camelcase
  8. pokemon: Show_pokemon;
  9. }
  10. function PokemonShow<Props>(): React.FunctionComponentElement<void> {
  11. const {
  12. pokemon: {iid, nickname, pokedexNumber, createdAt, updatedAt},
  13. } = this.props;
  14. return (
  15. <>
  16. <ul>
  17. <li>IID: {iid}</li>
  18. <li>nickname: {nickname}</li>
  19. <li>pokedexNumber: {pokedexNumber}</li>
  20. <li>createdAt: {createdAt}</li>
  21. <li>updatedAt: {updatedAt}</li>
  22. </ul>
  23. <p>
  24. <Link to={`/pokemon/${iid}/404`}>404 page</Link>
  25. </p>
  26. </>
  27. );
  28. }
  29. export default createFragmentContainer(
  30. PokemonShow,
  31. graphql`
  32. fragment Show_pokemon on Pokemon {
  33. iid
  34. pokedexNumber
  35. nickname
  36. createdAt
  37. updatedAt
  38. }
  39. `
  40. );