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

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

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

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

ES6 -д обьектод ямар өөрчлөлтүүд орсонг хичээлд үзэх болно. Кодод

const name = 'e-surgalt.com';
const age = 30;

хувьсагчид байгаад эдгээрийг хувьсагчийн нэртэй ижилхэн обьектын талбарт олгоё гэвэл ES5

const obj = {
    name: name,
    age: age
};

гэж бичдэг. Одоо обьектыг консолд

console.log(obj);

гэж харуулъя.

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

Компонентод Inline хэвжүүлэлт хийх нь javascript кодтой холилдон тийм аятайхан бус санагдаж байж болох. Кодлогчид css хэвжүүлэлтийг тусдаа файлд гаргаад хэрэгтэй файлдаа татан оруулан ашиглахыг ихэнхдээ илүүд үздэг. React -д хэвжүүлэлтийг тусдаа гарган ашиглах боломжтой бөгөөд үүний талаар хичээлд авч үзье.

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

Хичээлээр сорилгын үр дүнгийн хэсгийн боловсруулалтыг хийцгээе. Одоогоор сорилгын асуултууд дуусахад бид консолд Finished текстийг үзүүлж байгааг өөрчлөхийн тулд Quiz компонентод false анхдагч утгатай isFinished төлвийг

const [isFinished, setIsFinished] = useState(false)

нэмэн өгөөд onAnswerClickHandler аргаас сорилго дуусанг шалгах isQuizFinished функцээс true утга буцаавал Finished текстийг үзүүлж байсныг

        if (isQuizFinished()) {
          setIsFinished(true)
        } else {
          ...
        }

гэж өөрчилье. Өөрөөр хэлбэл сорилго дуусан isQuizFinished функцээс true утга буцаавал setIsFinished функцээр isFinished төлвийг true утгатай болгоно.

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

Javascript хэл сайтын хэрэглэгч талын буюу frontend хэсгийн програмчлалд хүчтэй түрэн орж ирлээ. Орчин үед хэрэглэгч талын хуудасыг SPA буюу нэг хуудаст аппликашн байдлаар хэрэгжүүлэх хандлага түлхүү зонхилох болсноор frontend кодлогчийн өндөр түвшинд эзэмшсэн байх зүйл бол Javascript болон түүнд дээр зохиогдсон фреймворкууд яалтгүй болоод байгаа. Ямар нэгэн зүйлийг өнгөцхөн судлаад өнгөрөх нэг хэрэг. Харин тухайн зүйлээ сайн эзэмших тийм ч амаргүй. Байнга суралцан судлах хэрэгтэй. Та frontend кодлогч болохоор шийдсэн бол сайтад нийтлэгдсэн хичээлүүдийг үзэхийг хичээнгүйлэн зөвлөе.     

useContext хукийн ажиллагааг судлахын тулд жижиг хэмжээний програмийг зохиоцгооё. Програмийн суурь бүтцийг App компонентод

import React from 'react'
import Alert from './Alert';
import Main from './Main';

function App() {
  return (
      <div className="container pt-3">
        <Alert />
        <Main />
      </div>
  );
}

export default App;

байдлаар зохион байгуулъя.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

X санамсаргүй хувьсагчийн магадлалын тархалт дараах хүснэгтээр өгөгджээ. Математик дундаж нь хэд вэ?

X 2 5 3 1
P 0,4 0,2 0,3 0,1

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

 

тоонуудаас аль нь рационал тоонууд вэ?

A. a,b,e   B. a,d,e   C. b,c,e   D. b,c,d   E. a,c,d

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

 

1,(3) аравтын үелэх бутархайг энгийн бутархай болго.

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