javascript - 如何将查询结果数据传递到Express.js和Mysql中的 View

标签 javascript

我试图在我的 View 中显示我的查询结果,但似乎没有任何效果,因为我是新手,我可以在控制台日志中看到结果,但在我的 html 文件 3 上看不到结果

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

var connection = require('../connection');

/* GET home page. */
router.get('/', function(req, res, next) {

connection.query('SELECT * FROM articles',function(error,results,fields){
 if(error) throw error;

  console.log('Data received from Db:\n');
  console.log(results);

  res.render('index', {data:results,error:null});
   });



});

 module.exports = router;

我的观点是

<!DOCTYPE html>
<html>
 <head>
 <title></title>
 <link rel='stylesheet' href='/stylesheets/style.css' />
  </head>
  <body>
  <h1>test</h1>
  <p>Welcome to <%= ??????? %> </p>
  </body>
  </html>

谢谢

最佳答案

我在这里使用 EJS 作为模板引擎,但您可以使用任何其他引擎。

你的index.js路由文件代码:

var express = require('express');
const sql = require('mssql');
var router = express.Router();

 router.get('/', function(req, res, next) {
 var myArr= [];
 const request = new sql.Request();
 request.query("SELECT * FROM Student", function(err, rows, fields) {
  if (err) {
    res.status(500).json({"status_code": 500,"status_message": "internal server 
  error"});
  } else {
  // Loop on each row
  var lng = rows.recordsets[0].length;
  var rc = rows.recordsets[0];
  for (var i = 0; i < lng; i++) {

    //Create an object to save current row's data
    var person = {
      'LastName':rc[i].LastName,
      'FirstName':rc[i].FirstName
    }
     // Add object into array
     myarr.push(person);
 }

// Render index page using array 
  res.render('index', {"myres": myarr});
}
});
});
 module.exports = router;

你的index.ejs应该像下面这样:

 <ul>
  <%for(let i=0; i<myres.length; i++){%>
   <li><%=myres[i].LastName%></li>

  <%}%>
 </ul>

关于javascript - 如何将查询结果数据传递到Express.js和Mysql中的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33707152/

相关文章:

php - 如何从 tinymce 编辑器中获取插入的图像?

javascript - 使用 Html5 getters 和 setters 实现带有显示模块模式的属性需要澄清

javascript - Postman 条件测试 json 主体数组是否为空 = 跳过测试

javascript - 在 Promise.prototype.then() 外部声明的对象在其内部使用时返回 undefined

JavaScript 习语 : create a function only to invoke it

javascript - Cordova Inapp 浏览器抛出错误

javascript - Microsoft Project - 获取所有 GUID (Javascript)

javascript - 单击屏幕上的任何位置关闭菜单

javascript - 没有收到 keyup 事件

javascript - 函数在函数表达式中不可见,如何解决?