template шинж

VueJs програмыг арай өөрөөр инициализаци хийх аргыг авч үзье.

    <body>
        <div id="app">
            <h2 >{{ title }}</h2>
        </div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            new Vue({
                el: '#app',
                data: {
                    title: 'Vue програм'
                }
            })
        </script>        
    </body>

кодод бид Vue -ийн хувийг app элементэд инициализац хийгээд app айдитай divtitle талбарт үзүүлж байгаа.

Хуудсыг нээвэл

Vue програм текстийг үзүүлнэ. Энд хүртэлх хичээлүүдэд Vue -гийн тохиргооны обьектод el талбарыг заавал тодорхойлон түүнд Vue -ийн хувийн инициализац хийх элементийн css селекторыг заан өгч байсан. Vue -ийн хувийн инициализацийг хийх өөр арга бий. Үүний тулд кодыг

    <body>
        <div id="app">
            <h2 >{{ title }}</h2>
        </div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            var vue = new Vue({
                data: {
                    title: 'Vue програмын өөр инициализац'
                }
            });
            vue.$mount('#app')
        </script>        
    </body>

гэж өөрчилье. Кодоос el: '#app' мөрийг хасаад Vue -ийн шинэ хувийг vue хувьсагчид авсан. Дараа нь Vue -гийн обьектын тусгай mount аргыг дуудахдаа түүнд Vue -ийн хувийн инициализац хийх элементийн css селекторыг дамжуулна. Хуудсаа шинэчилбэл

бүгд хэвийн ажиллана. Програмын инициализац зөв хийгдэж байгааг шалгах үүднээс үзүүлэх текстийг өөрчилсөн болно. Эндээс Vue -ийн хувийн инициализацийг mount аргаар хийж болох нь. Үнэн хэрэгтээ mount аргыг дуудалгүй el: '#app' мөрийг заан инициализац хийхэд Vue -гийн обьект өөрийн mount аргад хандан app айдитай элементэд инициализацийг хийдэг.
Үүнээс гадна Vue -ийн тохиргооны обьектод template талбарт хуудасны шаблоныг заан өгч бас болдог. Жишээ нь

    <body>
        <div id="app"></div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            var vue = new Vue({
                data: {
                    title: 'Vue програмын өөр инициализац'
                },
                template: '<h1>{{ title }}</h1>'
            });
            vue.$mount('#app')
        </script>        
    </body>

Энд app айдитай элементэд байсан html кодыг хасаад javascript кодод Vue -ийн тохиргооны обьектод template талбарт хуудасны html кодыг өгөөд дараа нь mount аргаар app айдитай элементэд инициализац хийсэн. Хуудсыг нээвэл

бүгд хэвийн ажиллана. Ялгах үүднээс хуудаст үзүүлэх текстийг h1 тегээр үзүүлсэн. Хуудасны хэвийг template талбараар дамжуулах энэ аргад тодорхой хязгаарлалт байдаг. Хэрвээ шаблонд олон тооны html элементүүд орохоор бол тэдгээрийг ямар нэгэн суурь элементэд оруулан багцлах хэрэгтэй. Жишээ нь

    <body>
        <div id="app"></div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            var vue = new Vue({
                data: {
                    title: 'Vue програмын өөр инициализац'
                },
                template: '<div><h1>{{ title }}</h1><p>Өдрийн мэнд</p></div>'
            });
            vue.$mount('#app')
        </script>        
    </body>

template талбараар дамжуулах html кодод title талбараас гадна p тегэд текстийг нэмэн үзүүлэх тул тэдгээрийг нэгтгэсэн div тегд оруулсан. Хуудасны ажиллагааг шалгавал

бүгд хэвийн ажиллана. Хэрвээ шаблоныг нэгтгэсэн div тегд авахгүй бол хуудасны ажиллагаанд алдаа өгнө. Үүнийг өөрсдөө шалгаарай.

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

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

RxJs сангийн хүрээнд буфер гэж юу болох талаар энэ хичээлээр авч үзье. Буфер гэдгийг утгуудыг түр зуур хадгалах сав буюу орон зайг гэж ойлгоорой.

buffer, bufferTime арга

Практик жишээгээр ухагдхууныг ойлгох нь амархан байдаг учраас шууд

Rx.Observable.interval(500)
    .buffer(Rx.Observable.interval(2000))
    .take(3)
    .subscribe(createSubscribe('buffer'));

кодыг авч үзье. Хөтөч дээр хуудсаа нээвэл консолд

үр дүнг үзүүлнэ. Код юу хийж байгааг авч үзье.

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

Хичээлээр react -ийн хукуудаас их өргөн ашиглагддаг useEffect -ийн талаар авч үзье. useEffect -ийн ажиллагааг судлах хуудасны кодийг

import React, {useState} from 'react'

function App() {
  const [type, setType] = useState('users')
 
  return (
      <div className="container">
        <h1>Өгөгдлүүд: {type}</h1>
        
        <button onClick= {() => setType('users')} className="btn btn-primary mx-3">Хэрэглэгчид</button>
        <button onClick= {() => setType('todos')} className="btn btn-primary mx-3">Хийх ажлууд</button>
        <button onClick= {() => setType('posts')} className="btn btn-primary mx-3">Нийтлэлүүд</button>
        
      </div>
  );
}

export default App;

гэж үүсгэе.

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

Javascript хэлийг ашиглахгүйгээр сайт зохионо гэдэг бүтэхгүй зүйл гэдэг нь ойлгомжтой. Сайтын хэрэглэгч талын хуудаст олон төрлийн javascript санг ашигладаг байсан бол одоо сайтыг бүгдийг javascript фреймворк ашиглан хийдэг SPA /single page application/ технологийг улам ихээр хэрэглэх болсон. Эдгээрийн нэг болох Vuejs сангийн хичээлүүдийг сайтад нийтэлж байгаа бөгөөд энэ удаад Vue -гийн хувийн тохиргооны обьектод data талбарт обьект тодорхойлж болж байхад яагаад компонентын хувийн тохиргооны обьектод data талбарт функц тодорхойлох ёстойг авч үзье. Компонентууд ямар хэрэгтэй вэ? хичээлийн жишээг

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

Өмнөх хичээлүүдээр директивийг үүсгэн бүртгүүлэхийг сурсан. Директивийг main.js файлд

Vue.directive('colored', ColorDirective)

гэж бүртгүүлсэн. Төслийн хэмжээнд глобал хэлбэрээр ашиглагдах директивийг дээрх аргаар бүртгүүлдэг. Үүнээс гадна компонент дотор директивийг

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

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

 

Аяга, стакан, ваар, лаазанд сүү, ундаа, квас, ус байжээ. Аяганд ус, сүү байхгүй, ундаатай сав ваар болон квастай савны дунд, лаазанд ундаа, усны аль нь ч байхгүй, стакан лааз ба сүүтэй савтай зэрэгцэн байрласан бол ямар саванд ямар шингэнийг хийсэн бэ.

Жич: Маш сонирхолтой гоё бодлого. Оролдоод үзээрэй.

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

 

илэрхийллийн хялбарчил.

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