Ирсэн параметруудын шалгалт

Хичээлээр компонентод ирж буй параметрүүд зөв эсэх, ийм шалгалтыг хийх ямар ач холбогдолтой талаар үзье. Компонентод параметр дамжуулах хичээлд App компонентоос carName, carYear талбаруудыг Car компонентод параметрээр дамжуулан авч үзүүлсэн. Тэгвэл Car компонент ирсэн параметрүүд дээр ямар нэгэн нэмэлт үйлдлийг жишээ нь машины нэрийг тонгоруулан

<template>
  <div class="car">
    <h3>Name: {{ carName }} \ {{reverseName}}</h3>
    <p>Year: {{ carYear }}</p>
  </div>
</template>

<script>
  export default {
    props: ['carName', 'carYear'],
    computed: {
      reverseName() {
        return this.carName.split('').reverse().join('')
      }
    }
  }
</script>

харуулдаг гэж үзье.

carName параметрээр ирсэн мөрийг тонгоруулан харуулах reverseName нэртэй тооцоогдох талбарыг нэмээд шаблонд нэрийн араас үзүүлж байгаа. Өмнөх хичээлийн жишээний App компонентоос ирэх carName параметрт хэт урт нэр ирж байгааг

export default {
  data () {
    return {
      carName: 'Toyota',
      carYear: 2018
    }
  },
  components: {
    appCar: Car
  }    

арай богино болгоё. Програмыг ажлуулбал хөтөч дээр машины нэрийг

гэж харуулна. Хэрвээ App компонентийн carName талбарт мөр биш ямар нэгэн тоо

export default {
  data () {
    return {
      carName: 10000,
      carYear: 2018
    }
  },
  components: {
    appCar: Car
  }
}

өгөөд програмын ажиллагааг шалгавал

Car компонент машины нэрийг тонгоруулах үедээ алдаа заана. Бид тоон төрлийн хувьсагчид байдаггүй split функцийг дуудах гэсэн тул алдаа заах нь аргагүй. Эндээс компонентод ирж буй параметрүүдийн төрөл, утга гэх мэт шинжүүд зөв ирж байгааг шалгах шаардлага гарч ирнэ. Програмын ажиллагааг хэвийн болгохын тулд carName: 'Toyota' гэж зөв утгыг тавиарай.
Car компонентийн profs талбарт параметрүүдийг массиваар өгсөнг обьектоор

<script>
  export default {
    props: {
      carName: String,
      carYear: Number
    },
    computed: {
      reverseName() {
        return this.carName.split('').reverse().join('')
      }
    }
  }
</script>

тодорхойлж болно. Обьектын түлхүүрээр carName буюу ирэх параметрийн нэрийг өгөөд утгаар параметр ямар төрлийнх байх ёстойг заасан. Програмыг ажиллуулбал бүгд хэвийн ажиллана. Хэрвээ App компонентийн carYear талбарт тоо биш мөр төрлийн утгыг carYear: '2018' гэж өгөөд програмын ажиллагааг шалгавал

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

<script>
  export default {
    props: {
      carName: {
        type: String,
        default: 'Нэр байхгүй'
      },
      carYear: Number
    },
    computed: {
      reverseName() {
        return this.carName.split('').reverse().join('')
      }
    }
  }
</script>

обьектын түлхүүрт обьект өгөн өргөжүүлж болдог. Дээрх кодод carName параметрийг мөр төрлийн, параметрийг дамжуулаагүй бол анхдагч утгыг олгох байдлаар шалгалт хийхээр тохируулсан байгаа. Одоо App компонентийн хэвд carName параметрийг дамжуулсан хэсгийг

<template>
  <div>
    <h1>Эцэг: {{ carName }}</h1>
    <app-car
      :carYear="carYear"
    ></app-car>  
  </div>
</template>

 хасаад програмын ажиллагааг шалгавал

консолд алдаа өгөхгүй бөгөөд дээрх үр дүнг авна. Компонентод ирж буй параметрийн шалгалтыг өргөжүүлэн хийх талаар Vue фреймворкийн албан ёсны сайтаас гүнзгийрүүлэн судлаарай.

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

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

Сүүлийн жилүүдэд нэг хуудас буюу SPA програмын боловсруулалтад өргөнөөр ашиглах болсон Angular, React, Vue гэх мэт дэвшилтэд фреймвокүүдийн суулгах ажиллагаанд ямар нэгэн скриптүүд ашиглахгүй бүх ажлыг пакетын менежерээр /npm/ суулгадаг болсон.

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

Програмчлалын хэл сурах нь нилээд шургуу, тэсвэр, хатуужил шаардах ажил. Өнөө үед програмчлалын хэлүүд обьект хандлагат зарчмыг бараг бүгд нэвтрүүлсэн болохоор хэлүүд бичлэгийн хувьд их ижилхэн болсон.   Дээрээс нь програмчлалын суурь бүтцүүд бүх хэлний хувьд ижил байдаг тул зарим хүмүүс програмчлалын хэлийг сурахад амархан хөнгөн гэж ярьж тайлбарлаж байдаг. Энэ бол их өнгөц хандлага гэдгийг сануулъя. Програмчлалын үндсэн суурь технологи, ажиллагааны зарчмыг зөв ойлгохын тулд нилээд гүн судалгаа хийх зайлшгүй шаардлагатай. Иймээс сйатад нийтлэгдэж буй програмчлалын хэлний хичээлүүдийг бүгдийг нь алгасалгүй үзэж судлахыг зөвлөе.

Vuejs - д компонент үүсгэсний дараа түүнийг бүртгүүлэх хэрэгтэй болдог. Энэ хичээлээр компонентүүдийг бүртгүүлэх аргуудын талаар авч үзнэ. Яагаад компонентийг бүртгүүлэх шаардлагатайг ойлгохын тулд Компонентууд ямар хэрэгтэй вэ? хичээлд my-counter компонент үүсгэсэн

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

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

buffer, bufferTime арга

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

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

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

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

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

Html хэвийн элементүүдэд хэвжүүлэлтийн стилийг шууд буюу inline /элементийн тодорхойлолтын мөрөнд/ зааж болдог. Үүнийг React компонентийн хэвийн элементүүдэд хэрхэн өгөхийг App компонентийн

class App extends Component {
  render() {
    return (
      <div>
        <h1>
          Hello world!
        </h1>
      </div>
    )
  }
}

кодоор харцгаая.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

KLM суурьтай, KL=1, KK1=d талтай KLL1K1 тэгш өнцөгт хажуу бүхий KLMK1L1M1 призм өгөгджээ. KL_|_KM, LMM1 , KMM1 хавтгайнуудын хоорондын өнцөг 60°, бол утганд призмд түүний бүх талыг шүргэх шаарыг багтааж болно.

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

 

тоонд хуваахад гарах тооны аравтын бичлэгт "0" цифр хэдэн удаа орох вэ?

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

 

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