Компонент үүсгэх

Өмнөх хичээлүүдэд бид create-react-app хэрэгслээр үүсгэсэн төслийн суурь код дээр жишээнүүдийг судласан. Одоо react төсөлд өөр компонентууд үүсгэн тэдгээрийг өөр хооронд нь холбон ашиглахыг сурцгаая. react -ийн компонентийг голдуу тусд нь хавтас үүсгэн байршуулдаг тул бид төслийн src хавтаст Car нэртэй хавтасыг үүсгээд түүн дотор Car.js файлыг үүсгээрэй.

react -д компонентийг үүсгэх хоёр үндсэн арга байдаг талаар JSX хичээлд дурдсан.

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

import React from 'react'

function Car() {
  return (
    <h2>This is car component</h2>
  )
}

export default Car

гэж үүсгэе. create-react-app хэрэгсэл төслийг үүсгэхдээ App компонентийг энэ аргаар үүсгэсэн байсанг бид бүрэн хэмжээний компонентийн зарим ажиллагаануудыг судлах зорилгоор Component классаас удамшсан класс хэлбэрээр өөрчлөн бичсэн. Функционал компонент Jsx -ийг буцаах учраас react санг импортлох ёстойг санаж байгаа байх. Үүний дээр Car компонентийг өөр компонентод ашиглахын тулд түүнийг экспортолсон байх ёстойг сануулъя. Одоо Car компонентийг өөр компонентод ашиглахдаа /жишээ нь App/ эхлээд import Car from './Car/Car' гэж компонентийг импортлоод.

import Car from './Car/Car'

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

App компонентийн агуулгыг багцалж буй элемент /div/ дотор html тег хэлбэрээр <Car /> гэж өгнө. Импорт хийж буй import Car from './Car/Car' бичлэг нь Car хавтас доторх Car.js файлаас эскпортолж байгаа Car -ийг Car нэрээр импортлоно гэж байгаа юм. Файлын .js өргөтгөлийг бичихгүй байж болдог. Өөрчлөлтийг хадгалаад хуудсаа харвал

гэж харагдана. Хуудасны кодийг харвал App компонентийн агуулгыг багцалж буй элемент /div/ дотор html тег хэлбэрээр өгөгдсөн <Car /> -ийн оронд Car компонентийн хэв /шаблон/ орж ирсэн байгаа. Ямар нэгэн төлөв, функционал ажиллагаа байхгүй энгийн компонентийг ийм байдлаар үүсгэнэ. Car компонентийн бичлэгийг ES6 -гийн сумаар тодорхойлогдох функцээр

import React from 'react'

const car = () => {
  return (
    <h2>This is car component</h2>
  )
}

export default car

гэж хураангуйлж болно. Сумаар тодорхойлох функц хичээлээс дэлгэрүүлэн үзээрэй. Өөрчлөлтийг хадгалаад хуудсаа харвал бүгд хэвийн ажиллана. car функц функционалгүй шууд утга буцааж байгаа тул кодоос return -г хасан

import React from 'react'

const car = () => <h2>This is car component</h2>

export default car

гэж бичсэн ч болно. Өөрчлөлтийг хадгалаад хуудасны ажиллагааг шалгавал урьдын адилаар ажиллана.

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

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

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

<template>
  <div>
      <h2>{{ title }}</h2>
      <input type="text" v-model="searchName">
      <ul>
        <li v-for="(name, index) of names" :key="index">{{ name }}</li>
      </ul>
  </div>
</template>

<script>
export default {
  data () {
    return {
      title: 'Hello I am Vue!',
      searchName: '',
      names: ['Баатар', 'Болд', 'Цэцгээ', 'Алимаа']
    }
  }
}
</script>

кодоор авч үзье.

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

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

Хичээлээр useState -тэй тун төстэй useRef хукийн талаар авч үзье. useRef хукийн онцлог ашиглалтыг компонент хэдэн удаа дахин зурагдсанг /render/ тодорхойлох асуудлаар авч үзье. Асуудлыг дараах

import React, {useState, useEffect} from 'react'

function App() {
  const [renderCount, setRenderCount] = useState(1)
 
  useEffect(() => {
    setRenderCount(prev => prev + 1)
  })
 
  return (
      <div className="container">
        <h1>Render -ийн тоо {renderCount}</h1>
      </div>
  );
}

export default App;

кодоор шийдчих мэт.

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

Обьектыг үүсгэх

String обьект нь энгийн тэмдэгтийн төрөлд харгалзах хэлний дотоод обьект юм. Обьект мөрийг шалгах, хэсгийг таслан авах, том жижиг үсгэнд шилжүүлэх гээд олон тооны аргуудтай. Энэ хичээлээр бид String обьектын ихээр хэрэглэдэг аргуудын талаар авч үзэх болно. String() конструктур нь анхны утгыг заан өгөх заавал байх шаардлагагүй параметртэй. Обьектыг үүсгэх жишээнүүд

var s = new String();
var head1 = new String("JavaScript хичээлүүд");

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

Өмнөх хичээлүүдэд үүсгэсэн 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

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

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

хязгаарыг бод.

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

 

илэрхийллийн утгыг ол.

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

 

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

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