import styled from 'styled-components';
export const Top = () => {
return (
<SContainer>
<h2>TOPページです</h2>
</SContainer>
);
};
const SContainer = styled.div`
text-align: center`;
import styled from 'styled-components';
import { SearchInput } from '../molecules/SearchInput';
import { UserCard } from '../organisms/user/UserCard';
export const Users = () => {
return (
<SContainer>
<SUserArea>
<h2>ユーザ一覧</h2>
<SearchInput />
{users.map((user) => (
<UserCard key={user.id} user={user} />
))}
</SUserArea>
</SContainer>
);
};
const users = [...Array(10).keys()].map((val) => {
return {
id: val,
name: `あああ${val}`,
image:
'https://images.unsplash.com/photo-1598133894008-61f7fdb8cc3a?q=80&w=988&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D',
email: '12345@example.com',
phone: '000-0000-0000',
company: {
name: 'テスト株式会社',
},
website: 'https://google.com',
};
});
const SContainer = styled.div`
display: flex;
flex-direction: column;
align-items: center;
padding: 24px;
`;
const SUserArea = styled.div`
padding-top: 40px;
width: 100%;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
grid-gap: 20px;
`;
import './App.css';
import { Router } from './router/Router';
export default function App() {
return <Router />;
}
import { BrowserRouter, Route, Switch } from 'react-router-dom';
import { Top } from '../components/pages/Top';
import { Users } from '../components/pages/Users';
import { Defaultlayout } from '../components/templetes/DefaultLayout';
import { HeaderOnly } from '../components/templetes/HeaderOnly';
export const Router = () => {
return (
<BrowserRouter>
<Switch>
<Route exact path="/">
<Defaultlayout>
<Top />
</Defaultlayout>
</Route>
<Route path="/users">
<HeaderOnly>
<Users />
</HeaderOnly>
</Route>
</Switch>
</BrowserRouter>
);
};