ক্ষেত্রগুলি কোড তৈরির একটি গুরুত্বপূর্ণ অংশ, কারণ তারা ব্যবহারকারী-সম্পাদনাযোগ্য মান যেমন স্ট্রিং, সংখ্যা এবং রঙ (অন্যদের মধ্যে) সংজ্ঞায়িত করে।
জেনারেট করা কোডে ফিল্ডের মানগুলি অন্তর্ভুক্ত করার ক্ষেত্রে ফিল্ডের মান পাওয়া, এটিকে একটি ব্যবহারযোগ্য স্ট্রিংয়ে রূপান্তরিত করা এবং তারপর বাকি কোডের সাথে স্ট্রিংকে সংযুক্ত করা জড়িত।
import {javascriptGenerator} from 'blockly/javascript';
javascriptGenerator.forBlock['my_custom_block'] = function(block, generator) {
// Get the field value.
const fieldValue = block.getFieldValue('MY_FIELD');
// Concatenate the code.
const code = `some code ${fieldValue} some more code`;
// Return the code.
return code;
}
মান পান
getFieldValue
ব্যবহার করে ক্ষেত্রের মানগুলি অ্যাক্সেস করা যেতে পারে। যা ফিরে আসে তা ক্ষেত্র থেকে ক্ষেত্র থেকে ভিন্ন, তাই আপনার নির্দিষ্ট ক্ষেত্র সম্পর্কে তথ্যের জন্য অন্তর্নির্মিত ক্ষেত্র ডকুমেন্টেশন পরীক্ষা করা উচিত। উদাহরণস্বরূপ, পাঠ্য ইনপুট ক্ষেত্রগুলি ব্যবহারকারীর প্রবেশ করানো সঠিক পাঠ্যটি প্রদান করে, কিন্তু ড্রপডাউন ক্ষেত্রগুলি ব্যবহারকারীর নির্বাচিত আইটেমের সাথে যুক্ত একটি ভাষা-নিরপেক্ষ স্ট্রিং প্রদান করে।
মান পরিবর্তন করুন
বেশিরভাগ ক্ষেত্রের মান অবিলম্বে আপনার কোড স্ট্রিং এর সাথে সংযুক্ত করার জন্য প্রস্তুত। যাইহোক, কিছু ক্ষেত্রের মান ব্যবহারযোগ্য হওয়ার আগে অতিরিক্ত কাজের প্রয়োজন।
স্ট্রিংস
স্ট্রিংগুলিকে সংযুক্ত করার আগে কোড জেনারেটর দ্বারা উদ্ধৃত করা প্রয়োজন৷
// For a single line text field.
const str = generator.quote_(block.getFieldValue('STR'));
// For a multiline text field.
const str = generator.multiline_quote_(block.getFieldValue('STR'));
ভেরিয়েবল
পরিবর্তনশীল নামগুলিকে সংযুক্ত করার আগে কোড জেনারেটর দ্বারা স্ক্রাব করা দরকার। এটি দুটি কারণে প্রয়োজনীয়:
- ভেরিয়েবল ব্যবহারকারীদের দ্বারা তাদের পছন্দের ভাষায় প্রবেশ করানো হয়। এর মানে তাদের ASCII অক্ষরে রূপান্তর করতে হতে পারে। উদাহরণস্বরূপ, "
متغير
" "_D9_85_D8_AA_D8_BA_D9_8A_D8_B1
" এ রূপান্তরিত হবে। - ভেরিয়েবল সংরক্ষিত শব্দের সাথে বিরোধ করতে পারে। এর মানে হল তাদের পরিবর্তন করতে হবে যাতে তারা বিরোধ না করে। উদাহরণস্বরূপ, "
for
" "for2
" তে রূপান্তরিত হবে।
const identifier = generator.getVariableName(block.getFieldValue('VAR'));
সংযুক্ত কোড
একবার আপনি আপনার ক্ষেত্রের মান পেয়ে গেলে এবং এটিকে একটি স্ট্রিংয়ে রূপান্তরিত করলে, আপনি এটিকে আপনার কোড স্ট্রিং দিয়ে সঠিক জায়গায় সংযুক্ত করতে পারেন।
const code = `some code ${value} some more code`;
রিটার্ন কোড
বিভিন্ন ধরণের ব্লকের কোড স্ট্রিংকে বিভিন্ন উপায়ে ফেরত দিতে হবে, তাই আরও তথ্যের জন্য তাদের পৃথক পৃষ্ঠাগুলি দেখুন: