عند عمل بعض المشاريع لاحظت تواجد مشاكل و اخطاء عند استعمال استدعاء ال function داخل ال onClick
-ماهو ختلاف عند استدعاء ال function داخل arrow functio ؟
مثال:
import React from 'react'
import { ImCheckmark } from "react-icons/im";
import { ImCancelCircle } from "react-icons/im";
const Todos = ({ todos, deletTodo, changeStatus }) => {
return (
<div>
{
todos.map((todo) => {
return (
<div key={todo.id} className='d-f todo-count'>
<div className={`${todo.status && 'line-through'}`} onClick={() => changeStatus(todo)}>{todo.name}</div>
<button
className='delete-btn'>
{todo.status ? <ImCheckmark style={{
color: 'yellow',
fontSize: "25px"
}} /> : <ImCancelCircle onClick={() => deletTodo(todo.id)} style={{
color: 'red',
fontSize: "25px"
}} />}</button>
</div>
)
})
}
</div> )}
export default Todos
1-ماهو ختلاف عند استدعاء ال function داخل onClick بهذه الطريقة ؟
import { React, useState } from 'react'
const TodoForm = ({addtodosHandler}) => {
const [text, setText] = useState('');
const addTodoTo = (e) => {
e.preventDefault()
const todo = {
id: new Date(),
name: text,
status : false
}
addtodosHandler(todo)
setText('')
}
return (
<form onSubmit={addTodoTo}>
<input onChange={(e) => setText(e.target.value)} className='input-field' type="text" placeholder='add Todo' value={text}/>
<button onClick={addTodoTo} className='btn all-btn'>Add Note</button>
</form>
)
}
export default TodoForm
و هل خطا استعمال كود هكذا