Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 反应表单-如果成功输入(MongoDB)数据库,则显示消息_Reactjs_Forms_Redux_Action - Fatal编程技术网

Reactjs 反应表单-如果成功输入(MongoDB)数据库,则显示消息

Reactjs 反应表单-如果成功输入(MongoDB)数据库,则显示消息,reactjs,forms,redux,action,Reactjs,Forms,Redux,Action,很抱歉,我确信在我进行几次搜索之前,这个问题已经得到了回答,但找不到它 我只是想找出一种提交表单的方法,并向用户发送“成功提交您的信息”的响应,然后清除表单 我做了一个小表格,使它简单-任何帮助将不胜感激 **编辑-在您单击submit时,所有内容都正确地提交到MongoDB中,但客户端没有发生任何事情。我想要一些东西来证明数据确实被添加了 form.js组件 import React, { Component } from 'react'; import { Button, Form,

很抱歉,我确信在我进行几次搜索之前,这个问题已经得到了回答,但找不到它

我只是想找出一种提交表单的方法,并向用户发送“成功提交您的信息”的响应,然后清除表单

我做了一个小表格,使它简单-任何帮助将不胜感激

**编辑-在您单击submit时,所有内容都正确地提交到MongoDB中,但客户端没有发生任何事情。我想要一些东西来证明数据确实被添加了

form.js组件

import React, { Component } from 'react';
import {
  Button,
  Form,
  FormGroup,
  Label,
  Input
} from 'reactstrap';
import { connect } from 'react-redux';
import { addItem } from '../actions/itemActions';

class Register extends Component {
  state = {
    name: '',
    email: ''
  };

  onChange = e => {
    this.setState({ [e.target.name]: e.target.value });
  };

  onSubmit = e => {
    e.preventDefault();

    const newItem = {
     name: this.state.name,
    email: this.state.email
   };

  this.props.addItem(newItem);

  this.setState({
  name: "",
  email: ""
  });

 };

 render() {
   return (
      <div>

        <Form onSubmit={this.onSubmit}>
          <FormGroup>
          <Label for="item">Name</Label>
            <Input
              type="text"
              name="name"
              id="item"
              placeholder="Full Name"
              onChange={this.onChange}
            />
            <Label for="email">Email</Label>
            <Input
              type="text"
              name="email"
              id="item"
              placeholder="Email"
              onChange={this.onChange}
            />
            <Button color="dark" style={{ marginTop: '1rem' }} block>
              Register
               </Button>
              </FormGroup>
           </Form>
      </div>
    );
  }
}

const mapStateToProps = state => ({
  item: state.item
});

export default connect(
  mapStateToProps,
  { addItem }
)(Register);
items.js

const express = require('express');
const router = express.Router();

// Item Model
const Item = require('../../models/Items');

// route   GET api/items
router.get('/', (req, res) => {
  Item.find()
    .sort({ name: 1 })
    .then(items => res.json(items));
});

// route   POST api/items
router.post('/', (req, res) => {
  const newItem = new Item({
    name: req.body.name,
    email: req.body.email
  });

  newItem.save();
});

module.exports = router;

那么你到底有什么问题?当您提交表单时,现在会发生什么?现在它会将所有内容正确地提交到MongoDB,在客户端,他们单击,看起来好像什么都没有发生。在提交时对表单当前的操作进行了编辑
const express = require('express');
const router = express.Router();

// Item Model
const Item = require('../../models/Items');

// route   GET api/items
router.get('/', (req, res) => {
  Item.find()
    .sort({ name: 1 })
    .then(items => res.json(items));
});

// route   POST api/items
router.post('/', (req, res) => {
  const newItem = new Item({
    name: req.body.name,
    email: req.body.email
  });

  newItem.save();
});

module.exports = router;