我是javascript语言的新手。 我在Bluemix中创建了一个应用程序。对于这个应用程序,我附加了SQL数据库服务。从应用程序index.html,我试图调用函数" TryConnect()"它具有连接SQL数据库的逻辑。 以下是TryConnect的实现:
this.TryConnect = function(){
var mysql = require("mysql");
var conn = mysql.createConnection({
host: "127.0.0.1",
user: "user",
password: "password",
database: "SQL Database-ox"
});
conn.connect(function(err){
if(err){
console.log("Error connecting to DB");
return;
}
console.log("Connection Established");
});
}
运行此操作后,我收到以下错误:
未捕获错误:模块名称" mysql"尚未加载上下文:_。使用require([])
我的index.html如下所示:
<!DOCTYPE html>
<html>
<head>
<title>NodeJS Starter Application</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="stylesheets/style.css">
<script data-main="db" src="require.js" ></script>
<script type="text/javascript" src="db.js" ></script>
<script type="text/javascript">
function ConnectToMySQL(){
alert("connect");
TryConnect();
alert("connect end");
}
</script>
</head>
<body>
<table>
<tr>
<td style= "width:30%;">
<img class = "newappIcon" src="images/Calendar.jpg">
<td>
<h1>Hello!</h1>
<p>Welcome to Calendar sync application.
This application synchronizes all your events, meetings and favourites.
</table>
<input type="button" onClick="ConnectToMySQL()" value="Connect to DB"/>
</body>
</html>
答案 0 :(得分:1)
模块名称&#34; mysql&#34;尚未加载上下文:_。使用require([])
因为您的代码:
var mysql = require("mysql");
做错误的问题:
require(["mysql"],function(mysql){
/// your code
});
这里讨论了这个和其他的事情:http://requirejs.org/docs/start.html
建议长期使用define
。
答案 1 :(得分:0)
请包含node.js,它将包含&#34; mysql&#34;声明所以当你使用require(&#34; mysql&#34;)时,javascript引擎会加载给定库的减速度。
请参阅以下链接。