Компонентийн амьдралын суурь цикл

react компонентийн амьдралын циклийн талаар судлая. react компонентийн амьдралын цикл гэдэг нь компонентийн тодорхойлолтын тодорхой үе шатууд юм. Суурь Component класст амьдралын циклийн аргууд тодорхойлогдсон байдаг тул түүнээс удамшсан компонентуудад амьдралын цикл байдагийг сануулъя. Хичээлээр компонентийн инициализац хийгдэх үед түүнд үүсэх амьдралын суурь циклүүдийн талаар авч үзье. Амьдралын циклүүд бүгд react компонентийн инициализацийн тодорхой үеүдэд ашиглаж болох ердийн функцууд байдаг.

Манай төсөлд Component классаас удамшсан ганц компонент App компонент учраас түүнд амьдралын циклийн

class App extends Component {

  constructor(props) {
    console.log('App constructor')
    super(props)
    this.state = {
      cars: [
        { name: 'Toyata Prius', year: '2018' },
        { name: 'Toyata Camry', year: '2019' },
        { name: 'Ford', year: '2015' }
      ],
      pageTitle: 'App компонент',
      showCars: false
    }
  }

  ...

  componentDidMount() {
    console.log('App componentDidMount')
  }

  render() {
    console.log('App render')
    const divStyle = {
      textAlign: 'center'
    }

    ...
    return (
      <div style={divStyle}>
        <h1>{this.props.title}</h1>
        <button className='AppButton' onClick={this.toogleCarsHandler}>Toogle car</button>
        <div style={{
          width: 400,
          margin: 'auto',
          paddingTop: '20px'
        }}>
          {cars}
        </div>
      </div>
    )
  }
}

componentDidMount функцыг тодорхойлон өгье. Аргыг компонентийн render аргын дээр тодорхойлон өгөөрэй. Арга дуудагдахад консолд аргын нэрийг үзүүлэх байдлаар тодорхойлсон. render арга ч компонентийн амьдралын циклийн нэг үе шат тул түүнд ч консолд аргын нэрийг үзүүлэх командыг нэмэн өгсөн. Үүний дээр компонентийн байгуулагч аргад нэрийг үзүүлэх console.log командыг нэмсэн. Mount -ийг орчуулбал ямар нэгэн зүйлийн нэвтрүүлэлт, холболтыг илэрхийлсэн үг. Өөрчлөлтийг хадгалаад yarn start эсхүл npm run start командаар төслийн компиляцийг хийгээд хөтөчийн Inspect цонхны Console табийг харвал

App constructor, App render, App componentDidMount текстүүдийг үзүүлнэ. render арга буюу амьдралын цикл хуудасны jsx кодийг бүрдүүлдэг гэдгийг бид мэднэ. render аргын араас componentDidMount арга ажилладаг нь консол дахь мэдээллээс ойлгомжтой. componentDidMount цикл эхлэхэд хуудасны html код бэлэн болсон байдаг тул өгөгдлийн санд хандах, төлвийн инициализац гэх ажиллагаануудыг энэ циклд голдуу хийдэг. Компонентийн төлөв, дамжуулах параметрүүд өөрчлөгдөх бүрд render арга дуудагддаг.

Санамж: React 16.3 хувилбараас render аргын өмнө ажилладаг байсан componentWillMount циклийг ашиглахгүй болсон.

Програмчлалын бусад хэлүүдийн адилаар Javascript класс ч байгуулагч аргаар үүсгэгддэг тул react компонентийн инициализацийн энхий арга бол байгуулагч арга. Гэхдээ байгуулагч арга Javascript -ийн api -д харьяалагдах болохоос react -ийн api -д ямарч хамаагүй гэдгийг ойлгоорой. Өөрөөр хэлбэл байгуулагч арга классыг үүсгэх арга болохоос react компонентийн амьдралын цикл биш.

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

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

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

  var a;
  a=[3, 5, 8];

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

Интернетэд сууриласан хөтөч дээр ажилладаг програмуудыг боловсруулахад 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 фреймворкийн үндсэн ойлголтууд багцын хичээлүүдийг үзэхийг зөвлөе.

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

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

    <body>
        <div id="app">
            <input type="text" v-on:keyup="alertValue">
        </div>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script>
            new Vue({
                el: '#app',
                methods: {
                    alertValue: function() {
                        if (event.keyCode === 13)
                            alert(event.target.value)
                    }
                }
            })
        </script>
    </body>

код дээр харцгаая. Хуудаст хэрэглэгчээс өгөгдөл авах input элемент байрлан түүнд товч дарагдах үйл явцыг v-on:keyup атрибут alertValue боловсруулагчтайгаар сонсохоор заасан.

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

React компонентод тулгуурладаг сан тул компонент гэж юу болохыг ойлгоцгооё. Үүний тулд машиний мэдээллийг үзүүлэх

<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8" />
  <title>Lesson 01_02</title>
  <style>
    .car {
      display: inline-block;
      border: 2px solid #ccc;
      box-shadow: 2px 2px 1px #eee;
      padding: 10px;
      margin-right: 10px;
    }
  </style>
</head>

<body>
  <div class="car">
    <h3>Toyata Camry</h3>
    <p>Year: <strong>2019</strong></p>
  </div>
</body>
</html>

код бүхий html файлыг үүсгээд хөтөч дээр нээвэл

гэж харагдана.

Класс ба структурт ердийн талбар, арга, шинжүүдээс гадна статик талбар, арга, шинжүүд байж болдог. Статик талбар, арга, шинжүүд…

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

 

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

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

 

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

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

 

Нийтлэлээр графикийн хэвүүдийн /GUI pattern/ түүхийг авч үзье. Боловсруулалтын графикийн хэвүүдийг 30 гаруй жилийн туршид боловсруулж байгаа бөгөөд…

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

 

Хааяа өөр өөр параметрүүдийн багцтай нэг аргыг үүсгэх шаардлага гардаг. Ирсэн параметрүүдээс хамааран аргын тодорхой хэрэгжүүлэлтийг хэрэглэнэ. Ийм…

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

 

Ямарч програмын ажиллагааны чухал хэсэг бол төрөл бүрийн мэдээллийн боловсруулалт, тэдгээртэй ажиллахтай холбоотой байдаг. Иймээс энэ хичээлээс vuejs

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

 

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

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

 

Илэрхийлэл бол математикийн хэлний үндэс болсон суурь ойлголтуудын нэг. Математикийн илэрхийллийг тооцооны алгоритм, аксиом, теорем, бодлогын нөхцлүүд гээд…

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

 

Програм зохиох бол нарийн төвөгтэй ажил. Ямар ч програмын хувьд өөрийн хийх ажлаа гүйцэтгэхийн чацуу цаашдаа хөгжих, ажлын…

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

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

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

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

 

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

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

 

Ангийн нийт сурагчдын 60% нь эмэгтэй сурагчид байдаг. Ангиас санамсаргүйгээр нэг сурагч сонгоход эрэгтэй сурагч байх магадлалыг ол.

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