猿问

如何把js文件从mysql获取的json数据 通过node.js中的express 渲染到前端页面?

如题 我需要把js文件中获取的json文件渲染到前端页面(使用jade模板)
我知道数据渲染需要用jade模板,但是不知道怎么把数据从js文件中传到前端页面
已经确定后端是获取到了数据的。
据说使用res.render来传json数据,请问传数据的语句应该是什么呢 ,怎么才能知道数据成功地传到前端页面了呢?我自己尝试以后在前端页面显示的是未定义。
下面的是我的js文件,guanli3是要传到的数据页面。

var express = require('express');

var router = express.Router();

var mysql = require('mysql');

var connection = mysql.createConnection({

    host : '127.0.0.1',

    user:  'root',

    password: 'root',

    port: '3306',

    database: 'demo1'

});

router.get('/', function(req, res, next) {

    res.render('guanli3');

    res.json('result')

});

connection.connect();

var sql = 'SELECT * FROM project order by id DESC limit 2';

connection.query(sql,function (err,result) {

    if(err){

        console.log('error');}


    else

    {

        var string=JSON.stringify(result);

        var result=JSON.parse(string);

        console.log(result);

    }

});

connection.end();

module.exports = router;


茅侃侃
浏览 510回答 1
1回答

慕妹3146593

res.render('/前端页面', {json:'json数据'});上面这个就是把josn数据传到相应的前端页面,放在你的sql语句的回调函数里面,比如:router.get('/admin', function (req, res, next) {    db.querySql('SELECT * FROM project order by id DESC limit 2', '', function(err, result){        res.render('/guanli3', {results:result});    });});
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答