Динамик өгөгдлийг харуулах

Өмнөх хичээлүүдэд үүсгэсэн App, Car компонентууд өөрийн статик агуулгуудыг л хуудаст харуулж байгаад бага зэргийн динамик ажиллагааг оруулах гээд үзье. Компонентийн агуулгын хэсэг jsx бичлэгийн дүрмээр бичигдсэн javascript код учраас бид түүнд динамик ажиллагааг оруулахад төвөггүй мэт. Иймээс Car компонентийн кодийг

import React from 'react'

const car = () => <div>
  <p>This is car component</p>
  <p><strong>1+1</strong></p>
</div>

export default car

гэж өөрчлөөд хуудсаа харвал

гэж харагдана. javascript1+1 -г уул нь 2 гэж үзүүлэх ёстой байтал хуудаст ердийн статик текст байдлаар харуулсан. jsx1+1javascript код гэдгийг хэрхэн ойлгуулах вэ гэвэл түүнийг {} хаалтанд авах хэрэгтэй. Тэгвэл jsx хаалтан дахь хэсгийг javascript код гэж үзэн түүнд үйлдэл хийх болно. Өөрөөр хэлбэл кодийг

import React from 'react'

const car = () => <div>
  <p>This is car component</p>
  <p><strong>{1+1}</strong></p>
</div>

export default car

гэж өөрчлөн хадгалаад хуудсаа харвал

гэж харагдана. {} хаалтанд javascript -ийн энгийн функцийг ч

const car = () => <div>
  <p>This is car component</p>
  <p><strong>{Math.random()}</strong></p>
</div>

өгч болно. Өөрчлөлтийг хадгалаад хуудсаа харвал

гэж харуулна. Хуудсаа шинэчилбэл динамикаар санамсаргүй тоог дахин гарган ирнэ. Одоо App компонентод Car компонентийг

class App extends Component {
  render() {
    const divStyle = {
      textAlign: 'center'
    }
    return (
      <div style={divStyle}>
        <h1 style={{ color: 'blue', fontSize: '20px' }}>
          Hello world!
        </h1>
        <Car />
        <Car />
      </div>
    )
  }
}

хоёр оруулан ирвэл

компонент бүр өөрийн санамсаргүй тоог тооцон гаргах болно. {} хаалтанд javascript -ийн энгийн функц, илэрхийллийг өгөн тооцоо хийлгэхийг

import React from 'react'

const car = () => <div>
  <p>This is car component</p>
  <p>Number: <strong>{Math.round(Math.random()*100)}</strong></p>
</div>

export default car

жишээгээр харуулъя. {} хаалтанд javascript -ийн энгийн функц, илэрхийллийг өгөн тооцоо хийлгэх дадлагыг өөрсдөө хийн туршин үзээрэй.

Зөвлөмж: Суралцах нь тийм амар ажил биш ч гэлээ хүн өөрийгөө дайчилж чадвал юуг сурах чадвартай. Сайтын програмчлалтай холбоотой хичээлүүдээс та тухайн хэлний анхан шатны баттай суурь мэдлэгтэй болно гэдгийг баттай хэлэх байна. Програмчлалын хэлийг дээд сургуульд л заадаг гэж буруу ойлгож болохгүй. Програмчлалын хэлийг ЕБС -ийн 7, 8 -р ангиас эхлэн судлан суралцах бүрэн боломжтой. Програмийн код бичих, програм зохиох ажилд хийсвэр сэтгэлгээ, юмыг олон талаас нь ухан ойлгох, өөрөө суралцах чадвар нэн чухал. Энэхүү чадваруудыг танд суулгах нь манай сайтын үндсэн үүрэг. Аливаа зүйлийн суурь онолыг судлахгүйгээр шууд практикт ашиглах гэж оролдох нь тун хэцүү болоод үр дүн муутай. Иймээс эхлээд суурь ухагдхуунуудыг судлан ойлгоод дараа нь түүнийгээ бодит ажилд хэрэглэж сураарай. Эзэн хичээвэл заяа дагана гэдэг тул танд ч бас боломж бүрэн байгаад итгээрэй.     

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

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

Бид Дадлага. /Төсөл үүсгэх/ хичээлээр өмнөх хичээлүүдэд үзсэн онолын мэдлэгээ батагах үүднээс төслийг үүсгэсэн. Одоо дадлагын төслийн зохион байгуулалтыг хариуцах суурь компонентийг үүсгэе. Энэ компонент сайтад үзүүлэх хуудасны бүх элементүүдийг багцлан агуулах юм. Энэхүү суурь компонент бусад компонентуудийг багцлах тул дээд түвшингийн компонент гэж үзэж болно.

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

ES6 -д шинээр гарч ирсэн бүтцийн задаргаа (destructuring assignment) ойлголтын талаар хичээлд авч үзье. Хичээлийн сэдвийг ойлгохын тулд  

let obj = {
    name: 'e-surgalt.com',
    age: 20
};

let name = obj.name;
let age = obj.age;

console.log('name: ' + name, 'age: ' + age);

name, age талбаруудтай обьектыг үүсгэе. obj обьектын талбаруудыг тусдаа хувьсагчуудад авахын тулд өмнө нь дээрх кодод бичигдсэн аргыг ашигладаг байсан. Терминалаас webpack -ийг ажлуулаад хуудсаа хөтөч дээр нээн консолын цонхыг харвал

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

Интернетэд сууриласан хөтөч дээр ажилладаг програмуудыг боловсруулахад javascript хэл чухал үүрэгтэй бөгөөд сүүлийн жилүүдэд javascript фреймворкуудын хөгжлийн үр дүнд нэг хуудаст програмчлалын аргачлал улам хүчтэй орж ирэх боллоо. Програмчлалын чиглэлээр сурч, ажиллаж байгаа залуучуудад зориулан Vuejs фреймворкийн хичээлүүдийг бэлтгэн оруулж байгаагийн ээлжит хичээлээр эцэг компонентоос хүүхэд компонентод параметрийг дамжуулахын зэрэгцээ хүүхэд компонентод үүссэн үйл явцыг эцэг компонент мэдэх асуудлыг хэрхэн шийдэхийг авч үзье. Үүний тулд Car компонентийн кодыг

<template>
  <div class="car">
    <h3>Name: {{ carName }} \ {{reverseName}}</h3>
    <p>Year: {{ carYear }}</p>
    <button @click="changeName">Нэрийг өөрчлөх</button>
  </div>
</template>

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

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

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

React аппликашний төлөвтэй ажиллахад зориулагдсан UseState хукийн ажиллагааг

import React from 'react'

function App() {
  return (
      <div className="container">
        <h1>Тоолуур</h1>
        <button className="btn btn-success mx-3">Нэмэх</button>
        <button className="btn btn-danger">Хасах</button>
      </div>
  );
}

export default App;

кодоор судлая. Туршилтын төслийг React хук хичээлд үүсгэсэнг сануулъя. Дээрх код бол харагдах байдлыг л тодорхойлж байгаа. Харин тоолууртай ажиллахын тулд төлвийг UseState хукийг ашиглан оруулан ирье.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

функцийн уламжлалыг тооц.

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

 

утгыг ол.

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

 

prob04_103_01 ба prob04_103_02 векторууд перпендикуляр бол y -ийн утгыг ол.

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