React Hook គឺ​ជា​ក្បូន​ខ្នាតពិសេស​​ម្យ៉ាង ដែល​យើង​អាចយក​​វា​មក​ប្រើប្រាស់​ សំរាប់​រក្សា​ទុក​នូវ​ទិន្នន័យ​ទាំងឡាយ និង​ឬ​កែប្រែ​ទិន្នន័យ​ទាំងនោះ នៅ​ក្នុង​កំឡុង​ពេល​ដែល​កម្មវិធី React កំពុង​ដំណើរការ​។ ជាកិច្ច​ចាប់ផ្តើម​ យើង​អាច​ធ្វើការ​សិក្សា​ពី useState ដែលជា​ hook ដ៏​ចាំបាច់​មួយ ក្នុង​ការរក្សាទុក​នូវ​ទិន្នន័យ​សំខាន់ នៅ​ក្នុង​កម្មវិធី React ។

 

import './App.css'
import './styles/global.css'
import Header from './components/header'

function App() {
  return (
    <div className="App">
      <Header />
    </div>
  )
}

export default App;

 

import '../styles/header.css'
import {useState} from 'react'

function Header(){

    const [title, setTitle] = useState('កម្មវិធី React')

    return (
        <div className="Header ">
            <div class='wrapper region'>
                <div class='logo'><a onClick={()=>setTitle('កម្មវិធី​កំពុង​ដំណើរការ')}>{title}</a></div>

                <form class='search'>
                    <input type="text" name='q' required />
                    <input type='submit' value='បញ្ជូន' />
                </form>

                <div class='logout'>ទំព័រ​ដើម | ចូល​ក្នុង</div>
            </div>
        </div>
    )
}

export default Header

 

.Header{
    background: var(--background-dark);
    color: white; 
    padding: 5px 0;
}

.Header .wrapper{
    display: grid;
    grid-template-columns: 30% auto 25%;
    align-items: center;
}

.Header .wrapper .logo{
    font: 30px/1.5 Anton, Limonf3;
}

.Header .wrapper .search{
    display: grid;
    grid-template-columns: auto 20%;
}

.Header .wrapper .search input{
    font: 14px/1.5 Vidaloka, OdorMeanChey;
    padding: 0 10px;
}

.Header .wrapper .logout{
    text-align: right;
    font-size: 18px;
}

 

GitHub: https://github.com/Sokhavuth/react

Heroku: https://khmerweb-react.herokuapp.com/