Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Nodejs网站没有';t显示第二个mysql表值_Javascript_Mysql_Node.js_Express - Fatal编程技术网

Javascript Nodejs网站没有';t显示第二个mysql表值

Javascript Nodejs网站没有';t显示第二个mysql表值,javascript,mysql,node.js,express,Javascript,Mysql,Node.js,Express,我有一个在mysql中显示值的express网站。它显示新闻,但不显示事件。我确信events表中有两个值 以下是路由中的index.js文件: var express = require('express'); var router = express.Router(); var mysql = require('mysql'); //connection variables var connection = mysql.createConnection({ host: 'localhost

我有一个在mysql中显示值的express网站。它显示新闻,但不显示事件。我确信events表中有两个值

以下是路由中的index.js文件:

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

//connection variables
var connection = mysql.createConnection({
host: 'localhost',
port: '3306',
user: 'root',
password: 'mypassword*',
database: 'icomnodejs'

});

 connection.connect();

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

 connection.query('SELECT * FROM news', function (err, rows, fields) {
    if (err) throw err;
    res.render('index', {
        'news' : rows
        });
   });
});

 router.get('/', function (req, res, next) {
  connection.query('SELECT * FROM events', function (err, rows, fields) {
    if (err) throw err;
    res.render('index', {
        'events': rows
          });
      });
  });

 module.exports = router;
这是我的视图文件index.handlebar

 <div class="row">
    {{#if news}}
        {{#each news}}

            <div class="col-md-4 img-portfolio">
                <a href="portfolio-item.html">
                    <img class="img-responsive img-hover" src="http://placehold.it/700x400" alt="">
                </a>
                <h3>
                    <a href="portfolio-item.html">{{title}}</a>
                </h3>
                <p>{{text}}</p>
            </div>
            {{/each}}
         </div>

{{else}}
<p>No News</p>
{{/if}}

    <hr>

    <!-- Marketing Icons Section -->
    <div class="row">
        <div class="col-lg-12">
            <h1 class="page-header">
                Upcoming Events Lopping As well
            </h1>
        </div>

        {{#if events}}
            {{#each events}}
                <div class="col-md-4">
                    <div class="panel panel-default">
                        <div class="panel-heading">
                            <h4><i class="fa fa-fw fa-check"></i> {{title}}</h4>
                        </div>
                        <div class="panel-body">
                            <p>{{text}}</p>
                            <a href="#" class="btn btn-default">Learn More</a>
                        </div>
                    </div>
                </div>
        {{/each}}
        {{else}}
        <p>No events</p>
        {{/if}}

    </div>

{{{如果是新闻}
{{{每条新闻}
{{text}}

{{/每个}} {{else} 没有消息

{{/if}
即将到来的活动也在减少 {{{#如果事件}} {{{#每个事件} {{title}} {{text}}

{{/每个}} {{else} 无事件

{{/if}

根据视图文件,我可以从数据库中看到新闻,但看不到事件。我只是不知道问题出在哪里

我认为您误解了快递中间产品和路线的概念。您正在针对同一路径注册不同的路由器处理程序。这样做可以满足您的需要:

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

//connection variables
var connection = mysql.createConnection({
  host: 'localhost',
  port: '3306',
  user: 'root',
  password: 'mypassword*',
  database: 'icomnodejs'

});

connection.connect();

function getNews(req, res, next) {
  connection.query('SELECT * FROM news', function (err, rows, fields) {
    if (err) {
      return next(err);
    };

    req._news = rows;
    return next();
  });
}

function getEvents(req, res, next) {
  connection.query('SELECT * FROM events', function (err, rows, fields) {
    if (err) {
      return next(err);
    };

    req._events = rows;
    return next();
  });
}

router.get('/', getNews, getEvents, function (req, res, next) {
  res.render('index', {
    'news': req._news,
    'events': req._events
  });
});

module.exports = router;

你说得对。我想我应该学习快递中间产品和路线。谢谢你的帮助。谢谢你的帮助。我还有一个问题。如果我想在同一个表中显示两个不同的值呢。喜欢