将NodeJS MySql与React Application

时间:2018-05-25 06:32:53

标签: javascript mysql node.js reactjs

我有一个在React服务器

上运行的普通Node应用
-node_modules
-src
   -Actions
   -Components
   -Stores
   -Server
     -server.js
-package.json   

基本上,当我运行时npm start React App将会运行,并且假设我将能够看到localhost:8080

中的示例

现在我的server.js文件包含MySql代码

var mysql = require('mysql');

var con = mysql.createConnection({
    host: "localhost",
    user: "yourusername",
    password: "yourpassword"
});

con.connect(function(err) {
    if (err) throw err;
    console.log("Connected!");
});

我必须显式运行node server.js命令才能获得与mysql的连接并运行查询。

如何在我的React App中集成server.js命令,这样当我运行npm start时,我的MySql连接和文件应该执行

1 个答案:

答案 0 :(得分:2)

简短的回答是:你没有。
简短修复是:使用某种程序来帮助你启动它们(比如npm)

答案很长:

设置你的npm启动任务来运行它们。您可以使用concurrently执行此操作。 (npm install --save concurrently

将你的npm启动任务(在你的package.json中)更改为:

"start": "concurrently -k -r -s first \"node server.js\" \"webpack-dev-server""

如果您需要进一步的帮助,请分享您的package.json文件。

最长的答案是:

这部分是可选的,如果你想学习,只需遵循它。

如果您需要更多详细信息,可以查看一个更高级的项目,例如我的react-sane-starter,以了解如何有效地启动多项服务。如果您有兴趣,这个项目还包含Docker。

同时&

人们经常建议在后台使用&运行其中一项任务,这通常会阻止显示日志(除非重定向),我强烈建议同时使用来解决此问题。 (它将很好地为您的不同服务添加前缀)