我使用ExpressJS作为服务器,MySql作为本地数据库。 我需要从表中获取一些数据并将查询结果发送到原版 JS 文件,或者只是编辑 HTML trought NodeJS,但我不知道如何......
我的快递服务器:
const express = require("express");
const app = express();
const path = require("path");
app.use(express.static("../public"));
app.get("/home", function(req, res) {
res.sendFile(path.join(__dirname + "/../index.html"));
});
1-要从数据库表中查询,您需要使用Node.js MySQL客户端或ORM,我在以下示例中使用mysql:
const mysql = require('mysql');
const connection = mysql.createConnection({
host : 'localhost',
user : 'me',
password : 'secret',
database : 'my_db'
});
connection.connect();
2-编写查询并将结果发回给最终用户
const express = require('express');
const router = express.Router();
router.get('/home', function(req, res, next) {
connection.query('SELECT * FROM `tablename`;', function (error, results, fields) {
if (error) throw error;
res.send({ results });
});
});
你必须选择一个像pug这样的模板引擎
您应该如前所述连接到数据库: const mysql = require('mysql'(; const connection = mysql.createConnection({ 主机 : "本地主机", 用户 : "我", 密码:"秘密", 数据库 : 'my_db' });
connection.connect();
并使查询形成表名:
const express = require('express');
const router = express.Router();
router.get('/home', function(req, res, next) {
connection.query('SELECT * FROM `tablename`;', function (error, results, fields) {
if (error) throw error;
res.render('index', { 'data' : results })
});
});
对于您的模板页面:
ul
each val, index in data
li= index + ': ' + val