首页 > 解决方案 > 有人如何将数据从 React 发送到 Node(准确地说是 Sails)?

问题描述

我正在后端进行所有“计算”,但用户输入发生在 React 端(显然 :))。如何将简单的数据图片传递给 Sails 后端?

我说“简单”是因为它是一个数字(像这样 - 201805)。在每个点击事件上,它可能是一个不同的数字,因此每次更改时都可以向 Sails(节点)后端发出一些发布请求,以便后端在每次用户更改前端值时进行必要的计算.

谢谢!

标签: node.jsreactjsrestsails.js

解决方案


您使用哪个后端并不重要,它实际上只依赖于 React 或您在前端所做的任何事情以及数据的格式 (JSON)。

在 React 中,您可以使用stateonChange钩子进行输入,并在提交时更新和发送更新的数据到您的服务器(后端),使用fetch或类似的库axios,用于向 API 发出请求。

例如:

class ExampleForm extends React.Component {
  state = {
    dataToSend: '',
  }

  onChange = (e) => { // On input change
    this.setState({
      dataToSend: e.target.value
    })
  }

  onSubmit = () => {
      axios.post('/api/whatever', { this.state.dataToSend })
    }
  }

  render() {
    return (
      <form onSubmit={this.onSubmit}>
          <label>Number</label>
          <input
            type="number"
            value={this.state.dataToSend}
            onChange={this.onChange}
          />
        <button type='submit'>Send Data</Button>
      </form>
    )
  }
}

推荐阅读