0

实际上,我想在使用 axios post 方法点击注册按钮后显示一些成功的消息,以便我在 react 中使用了 toastify 模块,但只有 catch 选项正在工作,然后不起作用......我被困在这里我不知道该怎么做.. .所以请帮我排序...这是我的代码

import React from 'react';
import {useState} from 'react';
import axios from 'axios';
import {toast} from 'react-toastify'; 
import 'react-toastify/dist/ReactToastify.css';  
toast.configure();
function Regform(){
const [user,setInput]=useState({
    ecode:"",email:"",phone:"",password:"",cpassword:""
})
function Handle(event){
const {name,value}=event.target;
setInput(prevInput=>{
    return {
        ...prevInput,
        [name]:value
    }
})
}
function postData(event){
event.preventDefault();

const newNote={
    ecode:user.ecode,
    email:user.email,
    phone:user.phone,
    password:user.password,
    cpassword:user.cpassword
}

axios.post('http://localhost:4000/create',newNote)
.then( response => {
    toast('Successfull registration ');
})
.catch( error => {
    toast('Invalid registration ') ;
})

}
return (
    <>

    <form method="POST">
        <fieldset>
                <legend><i>Registration Form</i></legend>
        <input type="text" placeholder="employee code" name="ecode" value = 
{user.ecode} onChange={Handle} autoComplete="off"/><br/>
        <input type="email" placeholder="email" name="email" value ={user.email} 
onChange={Handle} autoComplete="off"/><br/>
        <input type="number" placeholder="phone" name="phone" value ={user.phone} 
onChange={Handle} autoComplete="off" /><br/>
        <input type="password" placeholder="password" name="password" value = 
{user.password} onChange={Handle}  autoComplete="off"/><br/>
        <input type="password" placeholder="confirm password" name="cpassword" value 
={user.cpassword} onChange={Handle} autoComplete="off" /><br/>
        <button onClick={postData}>Register</button>
        </fieldset>
  
    </form>
    </>
)
}

export default Regform;

这是我的后端代码,对于我使用过 cloud mongo db 的数据库

const mongoose =require('mongoose');
const express=require('express');
const cors=require('cors');
const app=express();
app.use(cors());
app.use(express.json());
mongoose.connect("mongodb+srv://raushan: 
<password>@cluster0.ofx36.mongodb.net/nodeDB",{
useNewUrlParser:true,
useUnifiedTopology:true,
useCreateIndex:true
}).then( () => {
    console.log('Connected to database ')
})
.catch( (err) => {
    console.error(`Error connecting to the database. 
\n${err}`);
})

app.use("/",require("./routes/noder"));


app.listen(4000,()=>{
console.log('sever is running at a port no 4000')
})
4

0 回答 0