Fixing performer data rendering for deployment
This commit is contained in:
@@ -3,8 +3,8 @@ import React, { useEffect, useState } from 'react';
|
|||||||
import styles from '../styles/Performers.module.scss';
|
import styles from '../styles/Performers.module.scss';
|
||||||
import shared from '../styles/Shared.module.scss';
|
import shared from '../styles/Shared.module.scss';
|
||||||
import Performer from '../types/Performer';
|
import Performer from '../types/Performer';
|
||||||
import performers2021 from '../data/performers/2022';
|
|
||||||
import { BiChevronDown, BiChevronLeft } from 'react-icons/bi';
|
import { BiChevronDown, BiChevronLeft } from 'react-icons/bi';
|
||||||
|
import PerformersData from '../data/performers/2022';
|
||||||
|
|
||||||
interface PerformerCard extends Performer {
|
interface PerformerCard extends Performer {
|
||||||
id: number;
|
id: number;
|
||||||
@@ -17,14 +17,12 @@ const Performers = () => {
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
let cards: PerformerCard[] = [];
|
let cards: PerformerCard[] = [];
|
||||||
|
|
||||||
performers2021.map((p, index) => {
|
PerformersData.map((p, index) => {
|
||||||
let newCard = { ...p, id: index, showDesc: false };
|
let newCard = { ...p, id: index, showDesc: false };
|
||||||
cards.push(newCard);
|
cards.push(newCard);
|
||||||
});
|
});
|
||||||
|
|
||||||
return () => {
|
setPerformers(cards);
|
||||||
setPerformers(cards);
|
|
||||||
};
|
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const togglePerformerDesc = (id: number) => {
|
const togglePerformerDesc = (id: number) => {
|
||||||
@@ -37,50 +35,48 @@ const Performers = () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
setPerformers(updated);
|
setPerformers(updated);
|
||||||
|
|
||||||
console.log(performers);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<section className={shared.page}>
|
<section className={shared.page}>
|
||||||
<h1>Esiintyjät</h1>
|
<h1>Esiintyjät</h1>
|
||||||
{performers.map((p) => (
|
{performers.map((p) => (
|
||||||
<>
|
<div
|
||||||
<div
|
className={styles.performerContainer}
|
||||||
className={styles.performerContainer}
|
onClick={() => togglePerformerDesc(p.id)}
|
||||||
onClick={() => togglePerformerDesc(p.id)}
|
key={p.id}
|
||||||
>
|
>
|
||||||
<Image
|
<Image
|
||||||
className={styles.performerImage}
|
className={styles.performerImage}
|
||||||
src={p.imagePath}
|
src={p.imagePath}
|
||||||
width={100}
|
width={100}
|
||||||
height={100}
|
height={100}
|
||||||
layout='fixed'
|
layout='fixed'
|
||||||
/>
|
alt={p.name + ' image'}
|
||||||
<div className={styles.performerTextContainer}>
|
/>
|
||||||
<div className={styles.performerTitle}>
|
<div className={styles.performerTextContainer}>
|
||||||
<h2>{p.name}</h2>
|
<div className={styles.performerTitle}>
|
||||||
<button className={shared.openingChevron}>
|
<h2>{p.name}</h2>
|
||||||
{p.showDesc ? (
|
<button className={shared.openingChevron}>
|
||||||
<BiChevronDown size='3rem' />
|
{p.showDesc ? (
|
||||||
) : (
|
<BiChevronDown size='3rem' />
|
||||||
<BiChevronLeft size='3rem' />
|
) : (
|
||||||
)}
|
<BiChevronLeft size='3rem' />
|
||||||
</button>
|
)}
|
||||||
</div>
|
</button>
|
||||||
{p.showDesc && (
|
|
||||||
<>
|
|
||||||
{p.paragraphs.map((parag) => (
|
|
||||||
<p className={styles.performerDescription}>
|
|
||||||
{parag.toString()}
|
|
||||||
</p>
|
|
||||||
))}
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
<hr />
|
|
||||||
</div>
|
</div>
|
||||||
|
{p.showDesc && (
|
||||||
|
<>
|
||||||
|
{p.paragraphs.map((parag, index) => (
|
||||||
|
<p className={styles.performerDescription} key={index}>
|
||||||
|
{parag.toString()}
|
||||||
|
</p>
|
||||||
|
))}
|
||||||
|
</>
|
||||||
|
)}
|
||||||
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
</>
|
</div>
|
||||||
))}
|
))}
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user