3.7 KiB
3.7 KiB
گزارش جای خالی کارتهای داشبورد
خلاصه
در داشبورد فعلی بعضی اسلاتها Quick Access دارند اما خود کارت رندر نمیشود.
علت اصلی این است که wrapper اسلات را میسازد، ولی بعضی کامپوننتها وقتی دادهی کافی ندارند return null میکنند.
کارتهای خالی فعلی
1) sensorValuesList
- ردیف:
sensorMonitoring - جای کارت: ستون چپ ردیف سنسور
- Route:
/solid-sensor - وضعیت: فقط دکمه
دسترسی سریعدیده میشود، خود کارت خالی است - علت فنی: اگر
data.sensors.length === 0باشد، کامپوننت رندر نمیشود - مرجع:
src/views/dashboards/farm/SensorValuesList.tsx:30
2) sensorRadarChart
- ردیف:
sensorMonitoring - جای کارت: ستون راست ردیف سنسور
- Route:
/solid-sensor - وضعیت: فقط دکمه
دسترسی سریعدیده میشود، خود کارت خالی است - علت فنی: اگر
data.series.length === 0باشد، کامپوننت رندر نمیشود - مرجع:
src/views/dashboards/farm/SensorRadarChart.tsx:30
3) sensorComparisonChart
- ردیف:
sensorCharts - جای کارت: ستون بزرگ سمت چپ
- Route:
/solid-sensor - وضعیت: فقط دکمه
دسترسی سریعدیده میشود، خود کارت خالی است - علت فنی: اگر
data.series.length === 0باشد، کامپوننت رندر نمیشود - مرجع:
src/views/dashboards/farm/SensorComparisonChart.tsx:33
کارتهایی که ممکن است در شرایط خاص خالی شوند
اینها در HTML ارسالی شما فعلاً دیده میشوند، ولی در صورت خالی بودن داده میتوانند ناپدید شوند:
waterNeedPrediction
- شرط خالی شدن:
series.length === 0 - مرجع:
src/views/dashboards/farm/WaterNeedPrediction.tsx:37
soilMoistureHeatmap
- شرط خالی شدن:
series.length === 0 - مرجع:
src/views/dashboards/farm/SoilMoistureHeatmap.tsx:37
yieldPredictionChart
- شرط خالی شدن:
series.length === 0 - مرجع:
src/views/dashboards/farm/YieldPredictionChart.tsx:57
recommendationsList
- شرط خالی شدن:
recommendations.length === 0 - مرجع:
src/views/dashboards/farm/RecommendationsList.tsx:32
دلیل اینکه فقط آیکن دیده میشود
Wrapper همیشه این دکمه را رندر میکند:
src/views/dashboards/farm/FarmDashboardWrapper.tsx:921
اما خود کارت از اینجا null برمیگرداند:
src/views/dashboards/farm/FarmDashboardWrapper.tsx:478
یعنی:
- اسلات گرید وجود دارد
- دکمه quick access وجود دارد
- ولی محتوای کارت به خاطر دادهی خالی رندر نمیشود
نتیجه نهایی
بر اساس HTML فعلی، سه جای خالی قطعی در داشبورد وجود دارد:
sensorValuesListsensorRadarChartsensorComparisonChart
پیشنهاد اصلاح
بهترین اصلاح این است که بهجای return null:
- یک empty state واقعی داخل کارت نمایش داده شود
- یا در
FarmDashboardWrapperوقتی دادهی کارت خالی است، اصلاًQuick Accessهم رندر نشود
اگر خواستی، قدم بعدی را هم انجام میدهم و همین سه کارت خالی را با empty state card درست میکنم.