saito.k b4cd0208e6 Merged PR 51: タスク 1468: 部品component作成(ヘッダー・フッター)
## 概要
[Task: 1468](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_sprints/taskboard/OMDSDictation%20%E3%83%81%E3%83%BC%E3%83%A0/OMDSDictation/%E3%82%B9%E3%83%97%E3%83%AA%E3%83%B3%E3%83%88%204-2?workitem=1468)

- ヘッダーcomponentを作成
  - ログイン前とログイン後でヘッダーが異なるので各ページに配置するようにした
  - 呼び出すcomponentは一つとして作成し、内部でヘッダーを切り替えるようにした
- フッターcomponentを作成
  - ログイン前とログイン後でページのデザインが異なるのでヘッダー同様、各ページに配置することにした

## レビューポイント
- ヘッダーの作成方法に問題はないか

## UIの変更
- https://ndstokyo.sharepoint.com/:f:/r/sites/Piranha/Shared%20Documents/General/OMDS/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88/Task1468?csf=1&web=1&e=K2tFjK

## 動作確認状況
- 型チェック
- ローカルで動作確認

## 補足
2023-03-27 12:05:56 +00:00

52 lines
1.5 KiB
TypeScript

import React from "react";
import styles from "./loginedHeader.module.scss";
import logo from "../../assets/images/OMS_logo_black.svg";
import ac from "../../assets/images/account_circle.svg";
import { LoginedPaths } from "./types";
import { HEADER_MENUS, HEADER_NAME } from "./constants";
interface HeaderProps {
// userRole: "user" | "partner"; ログインユーザーのロールに応じてタブの活性非活性に使用する想定
name: string;
activePath: LoginedPaths;
}
// ログイン後のヘッダー
const LoginedHeader: React.FC<HeaderProps> = (props: HeaderProps) => {
const { name, activePath } = props;
return (
<header className={styles.header}>
<div className={styles.headerLogo}>
<img src={logo} alt="OM System" />
</div>
<div className={styles.headerSub}>{HEADER_NAME}</div>
<div className={styles.headerMenu}>
<ul>
{HEADER_MENUS.map((x) => (
<li key={x.label}>
<a
href={x.path}
className={
activePath.toUpperCase() === x.path.toUpperCase()
? styles.isActive
: ""
}
>
{x.label}
</a>
</li>
))}
</ul>
<p className={styles.accountInfo}>
<img src={ac} alt="" className={styles.accountIcon} />
<span>{name}</span>
</p>
</div>
</header>
);
};
export default LoginedHeader;