سلام وقت همگی بخیر
من تو بخش فرانت به یه مشکلی برخوردم ممنون میشم اگه راهنماییم کنید
من یه صفحه دارم که یه سری اطلاعات رو پست و ادیت میکنه
الان میخوام از طریق useLocalSearchParams و useEffect وقتی تو صفحه ادیت قرار گرفت باتن ادیت فعال شه
از طریق این لینک به صفحه ادیت میرم که هم ادیت رو از این طریق انجام میدم و هم یه معلم جدید رو اضافه میکنم
<Link href={"/teacher/createTeacher"}>Create</Link>
<Link href={`teacher/${item._id}`}>Edit: {item.name}</Link>
وقتی تو صفحه ادیت هستم با params.teacher ایدی معلم رو میگیرم و ادیتش میکنم
export default function Teacher() {
const params = useLocalSearchParams();
const [name, setName] = useState("");
const [biography, setBiography] = useState("");
const [teacher, setTeacher] = useState([]);
const [onEdit, setOnEdit] = useState(false);
const createTeacher = async () => {
try {
const response = await fetch(`${API}/teacher`, {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
name,
biography,
}),
});
const data = await response.json();
setTeacher(data.teacher);
setOnEdit(false);
} catch (error) {
console.log("EROR");
}
};
const editTeacher = async () => {
try {
const response = await fetch(`${API}/teacher/${params.teacher}`, {
method: "PUT",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
name,
biography,
}),
});
const data = await response.json();
setTeacher(data.teacher);
setOnEdit(true);
} catch (error) {
console.log("EROR");
}
};
return (
<View>
<View>
<TextInput value={teacher} onChangeText={setName} />
</View>
<View>
<TextInput value={teacher} onChangeText={setBiography} />
</View>
///// button
<TouchableOpacity onPress={createTeacher}>
<Text>Create</Text>
</TouchableOpacity>
<TouchableOpacity onPress={editTeacher}>
<Text>Edit</Text>
</TouchableOpacity>
</View>
);
}
به مهدی کمک کنید تا مشکل خودش را حل کند؛ اینطور میتوانیم با هم پیشرفت کنیم.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟