Цэс нээх хаах компонент

Програмийг удирдах цэсийг нээх болон хаах ажиллагааг хариуцах компонентийг боловсруулъя. Үүний тулд төслийн components хавтаст Navigation хавтасыг үүсгээд түүн дотор цэсний шилжилтийн компонентийн MenuToggle хавтасыг үүсгээрэй. Компонентийн хавтаст

import React from "react";
import classes from "./MenuToggle.module.css";

const MenuToggle = (props) => {
  const cls = [classes.MenuToggle, "fa"];
  if (props.isOpen) {
    cls.push("fa-times");
    cls.push(classes.open);
  } else {
    cls.push("fa-bars");
  }

  return <i className={cls.join(" ")} onClick={props.onToggle} />;
};

export default MenuToggle;

кодтой MenuToggle.js файлыг үүсгэе. MenuToggle функц ердийн icon буцаана. i тегээр үзүүлэх icon нд cls массиваар тодорхойлогдсон классуудыг join аргаар хоосон зайгаар тусгаарлагдсан мөрд шилжүүлэн className атрибутийн утга болгон өгсөн. Дүрс дээр даралт хийхэд дуудагдах onToggle функц компонентод props -оор дамжин ирнэ. cls массивт MenuToggle.module.css файлд тодорхойлогдсон MenuToggle классийг агуулна. MenuToggle функцээс icon фонтоор хэвжүүлсэн icon буцан ирэх учраас fa классийг агуулах ёстой. Үүний зэрэгцээ компонентод props -оор дамжин ирэх цэс нээлттэй эсэхийг тодорхойлох isOpen параметрээс хамааран cls массивт icon -ий нэрүүд солигдоно. Хэрвээ цэс нээлттэй бол cls массивт MenuToggle.module.css файлд тодорхойлогдсон open классийг нэмэн өгнө.
Компонентийн хэвжүүлэлтийн MenuToggle.module.css файлыг үүсгээд доорх

.MenuToggle {
  position: fixed;
  top: 40px;
  left: 40px;
  font-size: 20px;
  cursor: pointer;
  color: #fff;
  transition: opacity, left 0.22s ease-in;
  z-index: 100;
}

.MenuToggle:hover {
  opacity: 0.7;
}

.MenuToggle.open {
  left: 320px;
}

классуудыг тодорхойльё.
Удирдах цэсийг нээх болон хаах MenuToggle компонентийг дуудах хамгийн боломжтой компонент бол төслийн hoc хавтас доторх Layout компонент юм. Иймээс Layout компонентийн кодийг

import { useState } from "react"
import MenuToggle from "../../components/Navigation/MenuToggle/MenuToggle"
import classes from "./Layout.module.css";

const Layout = ({children}) => {
  const [menu, setMenu] = useState(false)
 
  const toggleMenuHandle = () => {
    setMenu(prev => {
      return !prev
    })
  }
 
  return (
    <div className={classes.Layout}>
      <MenuToggle onToggle={toggleMenuHandle} isOpen={menu} />
      <main>
        {children}
      </main>
    </div>
  )    
}

export default Layout;
>/pre>

болгон өөрчилье. Компонентод MenuToggle компонентийг импортлоод товчийг сорилго компонентийн дээр оруулан ирсэн. MenuToggle компонентод onToggle, isOpen атрибутуудыг дамжуулах ёстой тул компонентод цэс харагдах эсэхийг тодорхойлох false анхдагч утгатай төлөвийн menu хувьсагчийг үүсгэсэн. onToggle шинжийн утгаар toggleMenuHandle аргыг дамжуулсан. toggleMenuHandle арга цэс харагдах эсэхийг тодорхойлох menu талбарын утгыг сэлгэнэ. Өөрөөр хэлбэл false -оос true эсхүл true -гээс false болгоно. Өөрчлөлтийг хадгалаад хөтөч дээр хуудсаа харвал

r_06_11_01

menu талбар анхдагчаар false утгатай тул fa-bars иконийг харуулна. Икон дээр даралт хийвэл fa-times икон болон өөрчлөгдөхийн дээр дүрс аажмаар шилжинэ. Програмийн ажиллагааг шалган үзээрэй.

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

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

Зарим төрлийн бодлогыг бодоход нэг ижил үйлдлүүдийг олон дахин давтах тохиолдол гардаг. Практикт ийм төрлийн ажиллагааг циклээр шийдвэрлэнэ. Цикл гэдэг нь дараалсан үйлдлүүдийг тодорхой тоогоор давтан гүйцэтгэхийг хэлнэ. JavaScript -д хоёр төрлийн циклийн оператор байдаг.

  • Урьдчилсан нөхцөлтэй цикл
  • Параметртэй цикл

while оператор

while нь урьдчилсан нөхцөлт циклийн оператор болно. Тухайн оператор циклийн нөхцлийг биелэгдэхгүй болох хүртэл үйлдлүүдийг давтан хийдэг.

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

ES6 -д бий болсон модулийн системийн дүрмийн талаар үзэхийн өмнө зарим бэлтгэл ажлыг хийх хэрэгтэй. Төслийн үндсэн хавтаст extra.js файлыг үүсгээд дараах кодыг

let name = 'e-surgalt.com';
let age = 6;

оруулан өгье. extra.js файлд зарлагдсан хоёр хувьсагчийг index.js файлд оруулан ирэх хэрэг гарлаа гэе. Энд хоёр нөхцлийг хангана. Нэгд бусад модулууд extra.js файлд зарлагдсан хувьсагчдыг өөртөө ашиглах боломжийг нээх зорилгоор түүнийг гадагш экспортлох ёстой. Хоёрт бусад модулаас эскпорт хийгдсэн зүйлийг ашиглах модул нь импортлох хэрэгтэй.

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

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

buffer, bufferTime арга

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

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

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

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

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

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

<template>
  <div class="container">
    <form action="" class="pt-4">
      <div class="form-group">
    ...
      </div>

      <div class="form-group">
        <label for="password">Password</label>
        <input
          type="password"
          id="password"
          class="form-control"
          :class="{'is-invalid': $v.password.$error}"
          @blur="$v.password.$touch()"
          v-model="password"
        >

      </div>      
    </form>
  </div>
</template>

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

олон гишүүнтийн язгуурууд x1, x2, x3 (x1<x2<x3) бол
1.
2. x1, x2, x3 арифметик прогрес үүсгэх бол
3. Уул прогрессын ялгавар
4.

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

 

sin90 -ийг олно уу.

Жич: Хатуу самар даа. Сурагчид барна гэхэд хүнд болов уу. ЕБС-ийн хүрээний аргаар л бодолтыг хийж байгаа тул бодолтыг харвал гайгүй ч юм шиг санагдаж магадгүй гоё бодлого.

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

 

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

Жич: Бодох арга орж ирж байна уу. Найз нөхөд, багштайгаа хамжаад үзээрэй. Иймэрхүү бодлогууд сэтгэлгээг хөгжүүлэх, арга техникт суралцахад тустай. 

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