📋 محتويات الصفحة
📖 الوصف
PrimeReact هي واحدة من أكبر مكتبات مكونات React مفتوحة المصدر، تقدم أكثر من 90 مكون جاهز للاستخدام. تتميز بتصميم Material Design مع إمكانية تخصيص كامل للثيمات والدعم الكامل للغة العربية RTL. PrimeReact توفر مكونات متقدمة مثل DataTable، TreeTable، Charts (عبر Chart.js)، و Editor، مما يجعلها خيار ممت...
🎯 يستخدم في
مجالات استخدام هذه الأداة
Enterprise applications
Admin dashboards
Business applications
Data-heavy applications
Applications تحتاج مكونات جاهزة معقدة
✨ المميزات
أبرز مميزات هذه الأداة
أكثر من 90 مكون (أكبر من Ant Design)
DataTable with sorting
filtering
pagination
Charts integration (Pie
Bar
Line)
Full RTL and Arabic support
Free and open source
Extensive theming options
TreeTable for hierarchical data
Calendar and DatePicker
Rich text editor
⚠️ العيوب
نقاط يجب مراعاتها
Bundle size كبير
أداء أبطأ من البدائل الحديثة
Styling يتطلب CSS overrides
Not suitable for minimal projects
بعض المكونات قديمة التصميم
Requires more configuration
🔄 البدائل
أدوات بديلة يمكنك استخدامها
💻 مثال على الاستخدام
كيفية استخدام هذه الأداة
import { Button } from 'primereact/button';
import { InputText } from 'primereact/inputtext';
import { DataTable } from 'primereact/datatable';
import { Column } from 'primereact/column';
import { Dropdown } from 'primereact/dropdown';
import { Calendar } from 'primereact/calendar';
// Login Form
function LoginForm() {
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
const handleLogin = () => {
console.log('تسجيل الدخول:', username);
};
return (
<div className="flex flex-column gap-3 p-4" style={{ maxWidth: '400px' }}>
<div className="p-inputgroup">
<span className="p-inputgroup-addon">
<i className="pi pi-user" />
</span>
<InputText
placeholder="اسم المستخدم"
value={username}
onChange={e => setUsername(e.target.value)}
/>
</div>
<div className="p-inputgroup">
<span className="p-inputgroup-addon">
<i className="pi pi-lock" />
</span>
<InputText
type="password"
placeholder="كلمة المرور"
value={password}
onChange={e => setPassword(e.target.value)}
/>
</div>
<Button
label="تسجيل الدخول"
icon="pi pi-sign-in"
className="p-button-raised"
onClick={handleLogin}
/>
</div>
);
}
// DataTable
function UsersTable() {
const users = [
{ id: 1, name: 'أحمد', city: 'القاهرة', age: 28 },
{ id: 2, name: 'فاطمة', city: 'الإسكندرية', age: 32 },
];
return (
<DataTable value={users} paginator rows={10} stripedRows>
<Column field="id" header="الرقم" sortable />
<Column field="name" header="الاسم" sortable />
<Column field="city" header="المدينة" sortable />
<Column field="age" header="العمر" sortable />
</DataTable>
);
}
📚 أدوات أخرى في UI-Libraries
قد يعجبك أيضاً
Ant Design
⭐مكتبة مكونات Enterprise (Enterprise UI Component Library)
Ark UI
مكتبة مكونات Headless (Headless UI Component Library)
Base UI
مكتبة مكونات headless من MUI (Headless UI Components from MUI)
Chakra UI
⭐مكتبة مكونات واجهة بسيطة (Accessible UI Component Library)
DaisyUI
⭐مكتبة مكونات قائمة على utility classes (Component Class Library)
Fluent UI
⭐مكتبة مكونات Microsoft (Microsoft Design System)