Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

الأحداث

جزء من قسم الأساسيات في رحلة Solidity على Coddy. الدرس 48 من 53.

يسجّل الحدث إدخالًا في السجل لتراقبه التطبيقات خارج السلسلة. صرّح باسمه وحقوله ذات الأنواع على مستوى العقد، ثم استخدم emit لإنتاج السجل. تختلف الأحداث عن متغيرات الحالة وعن وحدة التحكم العملية.

صرّح بهذا على مستوى العقد:

event Counted(uint256 value);

استخدمه داخل الدالة main المتوفرة:

emit Counted(17);
console.log(uint256(17));

ينتج Counted سجلّ أحداث يحتوي على حقل رقمي واحد. تستدعي وحدة التحكم الطباعة بشكل منفصل للقيمة سبعة عشر في مشغّل التمرين هذا. لا تُضمَّن سجلات الأحداث في اختبارات المخرجات النصية، لذا يجب أن يُصدر التمرين الصحيح الحدث ويطبع القيمة المطلوبة بشكل منفصل.

صرّح عن الأحداث باستخدام event، وأنتج سجلاتها باستخدام emit.

challenge icon

التحدي

سهل

صرّح بالحدث Updated(uint256 value). أطلق Updated(amount)، ثم اطبع amount.

تمرّر الاختبارات الوسائط إلى main بهذا الترتيب: uint256 amount. يبدأ كل اختبار بحالة عقد جديدة.

استخدم console.log للإخراج المطلوب. اطبع القيم المطلوبة فقط، قيمة واحدة في كل سطر، من دون تسميات إضافية ما لم تحدد المهمة ذلك.

جرّب بنفسك

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 amount) external  {
        // اكتب حلك هنا.
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ Solidity