从JavaScript调用函数到Node.js时,未定义如何解决error require()
我正在尝试创建一个网站,发现Javascript没有任何方式与数据库联系。我做了一些研究,发现了node.js。我创建了一个node.js文件,代码的一小部分是:从JavaScript调用函数到Node.js时,未定义如何解决error require(),javascript,node.js,Javascript,Node.js,我正在尝试创建一个网站,发现Javascript没有任何方式与数据库联系。我做了一些研究,发现了node.js。我创建了一个node.js文件,代码的一小部分是: var mysql; var con; function initialise() { mysql = require('mysql'); con = mysql.createConnection({ host: "name of the server the database is on",
var mysql;
var con;
function initialise() {
mysql = require('mysql');
con = mysql.createConnection({
host: "name of the server the database is on",
user: "name of user that has can add and delete stuff to the database",
password: "password for the user",
database: "name of the database"
});
con.connect(function(err) {
if (err) throw err;
});
}
function getCoach(sql, con) {
return new Promise((resolve, reject) => {
con.query(sql, function (err, rows, fields) {
if (err) {
reject = (err);
throw err;
}
resolve(rows);
});
});
}
async function info() {
con.connect(function(err) {
if (err) throw err;
});
const results2 = await getCoach("SELECT username, password FROM coach", con);
return results2;
con.end();
}
我需要require('mysql')以便与数据库连接。我测试了它,可以在这个文件上与数据库建立连接,但是当我通过Javascript调用node.js文件中的函数时,我得到一个错误,说require()没有定义。我做了一些研究,发现很多像Browserify这样的东西都试图解决这个问题,但没有任何效果。如何删除错误,以便连接到通过JavaScript创建的数据库。我遗漏了什么?还有更好的方法吗?尝试在函数之外包含require语句,如下所示:
const mysql = require("mysql")
你是说你试图从浏览器中运行同一个js文件,但它不起作用吗?@Jackyef是对的。您必须在服务器上运行此mysql连接并生成api(请参阅nodejs的“express”)。如果你想在客户端获得更多的控制,而你又不固定在mysql上,我可以推荐Google的Firebase,这可能是一个更简单的设置。