كيفية استخدام التعيينات التفاعلية في Svelte للعمل مع تحديثات الحالة داخل أحد المكونات
أحد الأشياء الرائعة في Svelte هو أنك لست بحاجة إلى القيام بأي شيء خاص لتحديث حالة المكون.
كل ما تحتاجه هو مهمة.
لنفترض أن لديك ملفcount
عامل. يمكنك زيادة ذلك باستخدام ، ببساطة ،count = count + 1
، أوcount++
:
<script>
let count = 0
const incrementCount = () => {
count++
}
</script>
{count} <button on:click={incrementCount}>+1</button>
لا يعد هذا شيئًا مبتكرًا إذا لم تكن على دراية بكيفية تعامل أطر عمل الويب الحديثة مع الحالة ، ولكن في React ، سيتعين عليك الاتصالthis.setState()
، أو استخدمuseState()
صنارة صيد.
يتخذ Vue منهجًا أكثر تنظيماً باستخدام الفئات وdata
منشأه.
بعد استخدام كليهما ، أجد أن Svelte عبارة عن بناء جملة يشبه JavaScript.
نحتاج إلى أن نكون على دراية بشيء واحد ، يتم تعلمه بسرعة كبيرة: يجب علينا أيضًا القيام بمهمة عند تغيير القيمة.
بالنسبة للقيم البسيطة مثل السلاسل والأرقام ، يكون هذا في الغالب معطى ، لأن جميع العمليات في String ترجع سلاسل جديدة ، ونفس الشيء بالنسبة للأرقام - فهي غير قابلة للتغيير.
لكن للمصفوفات؟ لا يمكننا استخدام الطرق التي تغير المصفوفة. يحبpush()
وpop()
وshift()
وsplice()
... لأنه لا يوجد مهمة. يغيرون بنية البيانات الداخلية ، لكن Svelte لا يمكنه اكتشاف ذلك.
كذلك أنتعلبةما زلت تستخدمها ، ولكن بعد الانتهاء من عمليتك ، يمكنك إعادة تعيين المتغير لنفسه ، على النحو التالي:
let list = [1, 2, 3]
list.push(4)
list = list
وهو أمر غير بديهي بعض الشيء ، لكنك ستتذكره بسرعة.
أو يمكنك استخدام عامل الانتشار لإجراء العمليات:
let list = [1, 2, 3]
list = [...list, 4]
تحميل مجانيكتيب Svelte
المزيد من البرامج التعليمية svelte:
- الشروع في العمل مع Svelte - برنامج تعليمي قصير
- كيفية العمل مع الدعائم في Svelte
- كيفية استيراد المكونات في Svelte
- كيفية تصدير الوظائف والمتغيرات من مكون Svelte
- قوالب Svelte: المنطق الشرطي
- كيفية عرض مكون Svelte عند الطلب
- فتحات رشيقة
- كيفية إضافة التعليقات في قوالب Svelte
- Svelte Bindings
- معالجة تحديثات الحالة في Svelte
- جمل رد الفعل في Svelte
- أحداث دورة الحياة الرشيقة
- قوالب Svelte: الحلقات
- حل الوعود في قوالب Svelte
- العمل مع الأحداث في Svelte
- إدارة الحالة عبر المكونات في Svelte
- كيفية الوصول إلى معلمة URL في Sapper خارج وحدة البرنامج النصي
- كيفية تطبيق CSS ديناميكيًا في Svelte
- كيفية إعادة التوجيه إلى عنوان URL في Sapper
- كيفية محاكاة حلقة for في قوالب Svelte