在Angular Universal中将MySQL数据库与Node.js连接时出错。TypeError:无法读取属性';在';未定义的

在Angular Universal中将MySQL数据库与Node.js连接时出错。TypeError:无法读取属性';在';未定义的,mysql,node.js,angular,angular-universal,Mysql,Node.js,Angular,Angular Universal,我想在Angular Universal项目中通过Node.js连接到MySQL数据库 连接代码很简单: var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'root', password : 'root', database : 'dbname',

我想在Angular Universal项目中通过Node.js连接到MySQL数据库

连接代码很简单:

var mysql = require('mysql');

var connection = mysql.createConnection({
          host     : 'localhost',
          user     : 'root',
          password : 'root',
          database : 'dbname',
          port: '8889'
        });

connection.connect(function(err) {
          if (err) {
            console.log("Error connecting to DB: " + err);
            throw err;
          }
        });
首先,我得到以下错误:

TypeError: Cannot read property 'on' of undefined
        at Protocol._enqueue (/Applications/MAMP/htdocs/Angular2/myproject/node_modules/mysql/lib/protocol/Protocol.js:152:5)
...
Error connecting to DB: Error: Connection lost: The server closed the connection.
几秒钟后,出现以下错误:

TypeError: Cannot read property 'on' of undefined
        at Protocol._enqueue (/Applications/MAMP/htdocs/Angular2/myproject/node_modules/mysql/lib/protocol/Protocol.js:152:5)
...
Error connecting to DB: Error: Connection lost: The server closed the connection.
请告诉我在这种情况下应该做什么来解决问题


非常感谢。

如果我将package.json中zone.js的版本更改为0.7.4,那么一切都可以正常工作

这个问题在我安装Zone.js的最新版本时得到了解决:npm install Zone。js@latest.