Nodejs+MySql+Echart(html模板渲染)

使用nodejs编写后台从数据库中读取数据,再渲染到前端html文件用Echart画图

1.nodejs后台

var express = require('express');
var swig = require('swig');
var app = express();

var mysql=require('mysql');
//设置swig页面不缓存
// swig.setDefaults({cache: false});
// app.set('view cache', false);
app.set('views','/home/jun/study/echart/views');
app.set('view engine','html');
app.engine('html', swig.renderFile);


app.listen(4000);

console.log('server is started at http://localhost:4000');

//index page
app.get('/',function(req, res){
    var connection = mysql.createConnection({
        host: 'localhost',
        user: 'root',
        password: 'root',
        database: 'test'
    });
    connection.connect();
    connection.query('select * from db_1', function (err, data) {
        if (err) throw err;
        var name = [];
        var score = [];
        for (var i = 0; i < data.length; i++) {
            name[i] = (data[i].name).toString();
            score[i] = data[i].score;
        }
        res.render('index',{
            title:'首页 ',
            content: 'Echart Test',
            name:name,
            score:score
        });
    });
});

2.前端html模板页面




    
    {{ title }}


{{content}}

展示效果图:

Nodejs+MySql+Echart(html模板渲染)_第1张图片

 

找了好久都没找到关于nodejs传递参数到前端html渲染的,一般都是用ejs渲染引擎。

搞了两天,终于写出来了,希望对你也有所帮助。(相关知识点后续再完善)

你可能感兴趣的:(nodejs,Echart)