কোনো হ্যান্ডলার তার না জুড়েই একটি ইনপুট আর একটি ডিরাইভড ভ্যালুকে সিঙ্কে রাখুন: <=> দুই দিকেই বাইন্ড করে, আর যে কম্পিউটেড প্রপার্টি সেই ভ্যালু পড়ে সেটি নিজে থেকেই আপডেট হয়।1$my_greeter$mol_view2 sub /3<= Name $mol_string4 value?<=> name?5<= Hello $mol_view6 sub /<= greeting \1namespace $.$${2export class $my_greeterextends$.$my_greeter{3@ $mol_memname(next?:string){return next??''}45@ $mol_memgreeting(){6return this.name()?`Hello, ${ this.name() }!`:'Type your name'7}8}9}
সংগ্রহটিকে একটি রিয়্যাক্টিভ প্রপার্টিতে রাখুন এবং অ্যাকশন থেকে অপরিবর্তনীয়ভাবে (immutably) আবার লিখুন। কীযুক্ত Row* প্রতিটি আইটেমের জন্য একটি সারি রেন্ডার করে, আর——ভার্চুয়ালাইজড রেন্ডারিং-এর কল্যাণে——কেবল দৃশ্যমান সারিগুলোই তৈরি হয়।1$my_todo$mol_view2 draft?\3 items /4 sub /5<= Input $mol_string6 value?<=> draft?7 hint \New item8<= Add $mol_button_major9 click?<=> add?10 sub /<= add_label \Add11<= List $mol_list12 rows <= item_rows /13 Row*$mol_row14 sub /15<= Label*$mol_view16 sub /<= item_title*\17<= Delete*$mol_button_minor18 click?<=> delete*?19 sub /<= delete_label \✕1namespace $.$${2export class $my_todoextends$.$my_todo{3@ $mol_memdraft(next?:string){return next??''}4@ $mol_memitems(next?:readonlystring[]){return next??[]}56@ $mol_actionadd(){7const title=this.draft().trim()8if(!title)return9this.items([...this.items(),title])10this.draft('')11}1213@ $mol_actiondelete(id:number){14this.items(this.items().filter((_,i)=>i!==id))15}1617item_title(id:number){return this.items()[id]}1819item_rows(){20return this.items().map((_,id)=>this.Row(id))21}22}23}GitHub-এ এই পৃষ্ঠা সম্পাদনা করুনএটি কি সহায়ক ছিল?হ্যাঁনাপূর্ববর্তীReact, Vue ও Svelte থেকেপরবর্তীপ্লাগইনএই পৃষ্ঠায়দ্বিমুখী বাউন্ড ইনপুটযোগ ও মুছে ফেলা যায় এমন তালিকালোডিং ও এরর স্টেট সহ ডেটা ফেচলোকাল স্টেট পার্সিস্ট করারুট প্যারামিটার পড়া ও লেখাস্বয়ংক্রিয় লাইট/ডার্ক থিম যোগ করাপরবর্তীType to search the documentation.