কর্মক্ষেত্রে প্রতিটি পরিবর্তন একটি ইভেন্টকে ট্রিগার করে। এই ঘটনাগুলি প্রতিটি পরিবর্তনের আগে এবং পরে অবস্থাকে সম্পূর্ণরূপে বর্ণনা করে।
ঘটনা শোনা
ওয়ার্কস্পেসগুলিতে addChangeListener
এবং removeChangeListener
পদ্ধতি রয়েছে যা ইভেন্ট স্ট্রীম শোনার জন্য ব্যবহার করা যেতে পারে। একটি উদাহরণ হল কোডের রিয়েল-টাইম জেনারেশন । আরেকটি উদাহরণ হল সর্বোচ্চ ব্লক সীমা ডেমো । যেমনটি প্রায়শই হয়, এই দুটি উদাহরণের কোনটিই ট্রিগারিং ইভেন্টটি কী ছিল তা বিবেচনা করে না। তারা কেবল কর্মক্ষেত্রের বর্তমান অবস্থা দেখে।
আরও পরিশীলিত ইভেন্ট শ্রোতা ট্রিগারিং ইভেন্টটি দেখবে। নিম্নলিখিত উদাহরণটি সনাক্ত করে যখন ব্যবহারকারী তাদের প্রথম মন্তব্য তৈরি করে, একটি সতর্কতা জারি করে, তারপর শোনা বন্ধ করে যাতে আর কোন সতর্কতা ট্রিগার না হয়।
function onFirstComment(event) {
if (event.type == Blockly.Events.BLOCK_CHANGE &&
event.element == 'comment' &&
!event.oldValue && event.newValue) {
alert('Congratulations on creating your first comment!')
workspace.removeChangeListener(onFirstComment);
}
}
workspace.addChangeListener(onFirstComment);
ফ্লাইআউটের অভ্যন্তরে ঘটে যাওয়া কোনও ঘটনা শোনার জন্য একজন শ্রোতাকে ফ্লাইআউটের কর্মক্ষেত্রে যুক্ত করা যেতে পারে।
var flyoutWorkspace = yourWorkspace.getFlyout().getWorkspace();
flyoutWorkspace.addChangeListener(onFirstComment);
ব্লকের ইভেন্ট স্ট্রীম শোনার আরেকটি পদ্ধতি আছে। একটি ব্লক একটি onchange
ফাংশন সংজ্ঞায়িত করতে পারে বা একটি ফাংশন সেট করতে setOnChange ব্যবহার করতে পারে যা ব্লকের কর্মক্ষেত্রে যখনই একটি পরিবর্তন ঘটবে তখন কল করা হবে।
ইভেন্টের ধরন
পৃথক ঘটনা সম্পর্কে তথ্যের জন্য রেফারেন্স ডকুমেন্টেশন পড়ুন.
ডেমো
ইভেন্টগুলির সাথে আপনি যে দুর্দান্ত জিনিসগুলি করতে পারেন তার একটি উদাহরণের জন্য, আপনি মিরর ডেমোটি পরীক্ষা করে দেখতে পারেন৷ এই ডেমোতে দুটি ব্লকলি ওয়ার্কস্পেস রয়েছে যা ইভেন্ট ব্যবহার করে সিঙ্কে রাখা হয়।