Компонентын нэр

Компонентыг бүртгүүлэх хичээлд компонентийн нэрийг 'my-counter' гэж мөр төрлөөр бичин өгсөн. Энэ нь зарим тохиолдолд асуудал үүсгэдэг. Жишээ нь та төсlлийн кодыг бичиж буй засварлагчид кодыг цэвэр байлгах ямар нэгэн хэрэгсэл /linter/ ашиглаж байвал нэрэнд хашилтыг хэрэглэвэл төслийн хэвээс хасагддаг тул үүнийг ашиглахгүй байх нь дээр. Иймээс VueJs -д компонентийн нэрийг үүсгэх өөр аргачлал байдаг. Компонентийн нэрийг өгөхдөө

            new Vue({
                el: '#app',
                components: {
                    'my-counter': component
                }
            });

хашилтанд my-counter гэж html кодод ашиглах тегийн нэрийг өгсөн байгаа.

VueJshtml кодод ашиглах тегийн нэрийг арай өөрөөр үүсгэх арга байдгийг Компонентыг бүртгүүлэх хичээлийн жишээний div id="app1" элементэд Vue програмын инициализац хийхдээ my-counter компонентийг

    <body>
        <div id="app">
            <my-counter v-for="c in 2"></my-counter>
        </div>
        <hr>
        <div id="app1">
            <my-counter></my-counter>
        </div>        
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            var component = {
                template: `
                    <div style="border: 1px solid green; padding: 10px">
                        <h2>Тоолуур: {{ counter }}</h2>
                        <button @click="add">Тоолуурыг нэмэх</button>
                    </div>                
                `,
                data: function() {
                    return {
                        counter: 0
                    }
                },
                methods: {
                    add: function() {
                        this.counter++
                    }
                }
            }
            
            new Vue({
                el: '#app',
                components: {
                    'my-counter': component
                }
            });

            new Vue({
                el: '#app1',
                components: {
                    myCounter: component
                }
            })            
        </script>        
    </body>

бүртгүүлсэн жишээнээс харцгаая. app1 айдитай divVue -гийн хувийн инициализац хийхдээ түүний тохиргооны обьектын components талбарт компонентийг бүртгүүлсэн. Гэхдээ энд компонентийн нэрийг хашилтанд мөр хэлбэрээр биш myCounter гэж тэмээ /camelCase/ хэвийг ашиглан бичсэн. Үүнийг Vue фреймворк my-counter тегийн нэртэй ижилхэн болгон хөрвүүлнэ. Иймээс html кодод тегийг <my-counter></my-counter> гэж бичсэнг өөрчлөхгүйгээр ашиглана. Хуудсыг хөтөч дээр нээвэл

консолд алдаа заахгүйгээр гурван тоолуурыг үзүүлэн бүгд хэвийн ажиллана. Иймээс цаашид тегийн нэрийг кодод мөр хэлбэрээр биш camelCase хэвийг ашиглан бичиж сурахыг зөвлөе.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 360 Бүртгүүлэх

Сорилгын үр дүнгийн QuizResult компонентод сорилгыг дахин эхлүүлэх товч байгаа. react -ийг зохиогчид  програмийг компонент дээр суурилан хийх аргачлалыг уриалдаг учраас сорилгыг дахин эхлүүлэх товчийг тусд нь компонент байдлаар боловсруулъя. Үүний тулд төслийн components хавтаст UI нэртэй хавтасыг үүсгээд түүнд Button хавтасыг үүсгэе. UI гэдэг нь /user interface/ буюу хэрэглэгч талын дэлгэцийн төрөл бүрийн элементүүдийг үзүүлэх компонентуудыг агуулах юм. Button хавтас бол дэлгэц дээр үзүүлэх товчны компонентийн хавтас бөгөөд түүнд Button.js, Button.module.css үүсгэн өгөөрэй.

  Нээгдсэн тоо: 1530 Төлбөртэй

Програм ямар нэгэн алдаагүй зөв ажиллаж байх хэрэгтэйг бүгд мэднэ. Харин програм зохиогч өөрийн кодийг хурдтай ажилладаг, зохион байгуулалт сайтай, ойлгомжтой байлгахыг байнга эрмэлзэх ёстой. Програм зохиогч бүр програм боловсруулалтын DRY /do not repeat yourself/ дүрмийг ягштал биелүүлэн хэвшил болгосон байх хэрэгтэй. Хичээлээр Vue -гийн програмын ажиллагааг хэрхэн оновчтой /оптимизаци/ болгохыг доорх жишээгээр

        <div id="app">
            <h2>Тоолуур {{ counter}} </h2>
            <h3>{{ condition }}</h3>
            <button @click="add">Нэмэх</button>
            <button @click="sub">Хасах</button>
        </div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            new Vue({
                el: '#app',
                data: {
                    counter: 0,
                    condition: 'Тоолуур 3-аас бага'
                },
                methods: {
                    add: function() {
                        this.counter ++
                        this.condition = this.counter > 3 ? 'Тоолуур 3-аас их' : 'Тоолуур 3-аас бага'
                    },
                    sub: function() {
                        this.counter --
                        this.condition = this.counter > 3 ? 'Тоолуур 3-аас их' : 'Тоолуур 3-аас бага'
                    }
                }
            })
        </script>        
    </body>

авч үзье. Хуудаст тоолуурын counter талбар, харьцуулалтын үр дүнгийн condition талбаруудыг үзүүлэх h2, h3 гарчигаас гадна тоолуурын утгыг нэмэх, хасах хоёр товч байгаа.

  Нээгдсэн тоо: 1314 Нийтийн

ES6 -д обьектод ямар өөрчлөлтүүд орсонг хичээлд үзэх болно. Кодод

const name = 'e-surgalt.com';
const age = 30;

хувьсагчид байгаад эдгээрийг хувьсагчийн нэртэй ижилхэн обьектын талбарт олгоё гэвэл ES5

const obj = {
    name: name,
    age: age
};

гэж бичдэг. Одоо обьектыг консолд

console.log(obj);

гэж харуулъя.

  Нээгдсэн тоо: 1249 Төлбөртэй

Директивт дамжуулж болох бас нэгэн параметр бол модификатор юм. Модификатр гэдгийг Үйл явцын модификаторууд /тохируулагч/ хичээлд үзснээр директивийн аргументийн араас цэгээр таслан өгч болох утгууд гэж ойлгож болно. Жишээ нь

<button v-on:click.prevent.stop="method">Button name</button>

бичлэг товч дээрх дарах үйл явцын v-on директивт prevent, stop модификаторуудыг дамжуулж байгаа. Иймээс бид өөрсдийн боловсруулсан директивтээ модификаторыг дамжуулан түүнтэй ажиллах боломжийг судлая.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 365

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 456

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 435

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 508

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 577

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 570

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 711

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 849

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 840

 
Энэ долоо хоногт

тэнцэл бишийг бод.

Нээгдсэн тоо : 1420

 

B(5;3) цэгт төгсгөлтэй AB вектор (3;1) гэсэн кординаттай бол A цэгийн абцисс, ординатын нийлбэрийг ол.

Нээгдсэн тоо : 742

 

prob14_84_01 функцийн хязгаарыг ол.

Нээгдсэн тоо : 247