আমার একটি আছে type:
type tSelectProtected = {
handleSelector?: string,
data?: tSelectDataItem[],
wrapperEle?: HTMLElement,
inputEle?: HTMLElement,
listEle?: HTMLElement,
resultEle?: HTMLElement,
maxVisibleListItems?: number
}
আমি একটি বিশ্বব্যাপী মডিউল-ভিত্তিক ভেরিয়েবল ঘোষণা করি:
var $protected : tSelectProtected = {};
আমি function1()সুযোগে যথাযথ মান নির্ধারণ করছি :
$protected.listEle = document.createElement('DIV');
function2()সুযোগ পরে , আমি কল করছি:
$protected.listEle.classList.add('visible');
আমি টাইপস্ক্রিপ্ট ত্রুটি পেয়েছি:
error TS2533: Object is possibly 'null' or 'undefined'
আমি জানি যে if ($protected.listEle) {$protected.listEle}সংকলককে শান্ত করার জন্য আমি স্পষ্টত চেক করতে পারি তবে এটি বেশিরভাগ নন মামুলির ক্ষেত্রে খুব অযৌক্তিক বলে মনে হয়।
টিএস সংকলক চেক অক্ষম না করে এই পরিস্থিতি কীভাবে পরিচালনা করা উচিত?

nullভেরিয়েবল বা বৈশিষ্ট্যের মানগুলি আরম্ভ করার জন্য ব্যক্তিগতভাবে আমি "ভ্যানিলা" জাভাস্ক্রিপ্টে ব্যবহার করি । প্রদত্ত ভের বা প্রপ উপস্থিত থাকলে এটি আমাকে সোজা উত্তর দেয় তবে এটির "কোনও ব্যবহারযোগ্য মান নেই" বা "কার্যকর হওয়ার কোনও সময়ে মানটি সাফ করা হয়েছিল"। এটা ঠিক কনভেনশন দ্বারা। এটি টাইপস্ক্রিপ্টে সেরা পন্থা নাও হতে পারে কারণ আমি এখানে উত্তর দিয়ে দেখতে পারি। আপনার ভাবনার জন্য আপনাকে ধন্যবাদ.