代码入下 新手 求大神帮忙怎么把数据库查到的东西渲染到goods页m
nodejs吧
全部回复
仅看楼主
level 1
wayery 楼主
router.post('/goods/tejia',function(req,res,next){
var gid = req.body.gid; console.log(gid);
User.find({ gid :gid }).then(function(goodsInfo){
console.log(goodsInfo); return goodsInfo.save();
}) })
router.get('/',function(req,res,next){ // console.log(req.goodsInfo); res.render('goods',{ goodsInfo:req.goodsInfo }) })
2017年05月21日 15点05分 1
level 6
ejs,jade,自行百度
2017年06月12日 11点06分 3
level 1
这是一个异步执行顺序的问题。你要确保你拿到数据的值之后,再执行res.render。
我用了一个jas的插件来控制执行顺序。你可以看看我这个笔记。保障Node服务器稳定运行的几点经验 http://note.youdao.com/noteshare?id=db6aae9bbabb64cff9215cd12e138e8f&sub=3BE58C1F915E4BE89DD14EA8F1BED8D9
var express = require("express");var router = express.Router();var mysql = require("mysql");var Jas = require("jas");var connection = mysql.createConnection({host: "localhost",user: "root",password: "root",database: "blog",port: "3306"});var handleError = function(err) {if (err) {// 如果是连接断开,自动重新连接if (err.code === "PROTOCOL_CONNECTION_LOST") {connect();} else {console.error(err.stack || err);}}};connection.connect(handleError);connection.on("error", handleError);//查询world表
/* GET home page. */
router.get("/", function(req, res, next) {var data;var flow = new Jas();connection.query("SELECT * FROM users", function(err, rows, fields) {if (err) throw err;
data = rows;flow.trigger("A");});
flow.when(["A"], function() {res.render("index", { title: "测试博客", sendData: data });});});
module.exports = router;
2017年07月04日 13点07分 4
1