Я делаю контейнер для линейного графика d3, который я собираюсь создать, пока мой формат таков:
import React from "react";
import AnalyticPads from "../AnalyticPad/AnalyticPad";
import Pad from "../AnalyticPad/Pad";
import MainContent from "../AnalyticPad/MainContent";
import Extention from "../AnalyticPad/Extention";
const GraphPad = () => {
return (
<AnalyticPads properties={{height: "200px"}}>
<Pad>
<MainContent>
</MainContent>
<Extention>
</Extention>
</Pad>
</AnalyticPads>
)
}
export default GraphPad;
А мой «Аналитический блокнот» выглядит так:
import React from "react";
const AnalyticPads = (props) => {
return (
<div className="analytic-pad-container">
{props.children}
</div>
)
}
export default AnalyticPads;
Я хочу, чтобы была сетка «Pads», и я хочу, чтобы этот «AnalyticsPad» предоставлял стили по умолчанию для каждого блока, например, если я хочу, чтобы каждый блок имел высоту 200 пикселей, я устанавливаю его в этой оболочке, а затем для любого отдельного пэда, который я хочу отличаться от значения по умолчанию, я могу переопределить его.
Компонент «MainContent» — это место, где будет линейный график, а любая дополнительная информация будет помещена внутрь «Расширения», которое будет отображаться при нажатии кнопки.
В моем приложении для реагирования я продолжаю использовать контекстный API для предоставления данных дочерним компонентам, но я знаю (или думаю), что это плохая практика, из того, что я понимаю, контекст следует использовать только для предоставления данных глобальным компонентам.
Что лучше всего?
пожалуйста, не отвечайте с решением для компонентов класса, поскольку я никогда не использовал их раньше, поскольку я новичок в реагировании.