nodejs --express问题请大师进来感谢。

gaowenzhen 2013-06-05 07:29:46
是用require('express')来实现的,app.js,里有http服务器正常启动。

我想自定义个自已写的模块,如下想把mysql写成一个模块没成,
require('mysql')调用是正常的,直接写在app.js测试过。
routes/index.js

var dbconn=require('Mysqldb');
//如下调用时是空的
console.log(dbconn._db);

mysqldb/index.js

var _db={
conn:{}
};
_db.conn=function(){
var mysql = require('mysql');
var TEST_DATABASE = 'nodejs_db';

var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'root',

});
connection.query('USE '+TEST_DATABASE);
return connection;
}

我的问题:
通过 var dbconn=require('Mysqldb');得到connection然后直接,
dbconn.query('sql',function(){})//这样可老不成功,请大师帮助感谢。
...全文
99 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
JadeZLY 2013-06-28
  • 打赏
  • 举报
回复
引用 7 楼 zhs077 的回复:
引用 3 楼 JadeZLY 的回复:
引用 2 楼 zhs077 的回复:
去Cnodejs社区,那里专业
那里专业,那你跑到这里来干嘛?奇葩
这人有病?
你才有病,懂不懂尊重人家啊,已经有人真心实意的回答LZ的问题了,你来一句”去Cnodejs社区,那里专业“,让回答问题的该情何以堪啊。
zhs077 2013-06-27
  • 打赏
  • 举报
回复
引用 3 楼 JadeZLY 的回复:
引用 2 楼 zhs077 的回复:
去Cnodejs社区,那里专业
那里专业,那你跑到这里来干嘛?奇葩
这人有病?
zhs077 2013-06-06
  • 打赏
  • 举报
回复
去Cnodejs社区,那里专业
gaowenzhen 2013-06-06
  • 打赏
  • 举报
回复
bbjbepzz 方法可行感谢,我自已过写如:exports = module.exports = _db;
bbjbepzz 2013-06-06
  • 打赏
  • 举报
回复
var _db={ conn:{} }; _db.conn=function(){ var mysql = require('mysql'); var TEST_DATABASE = 'nodejs_db'; var connection = mysql.createConnection({ host : 'localhost', user : 'root', password : 'root', }); connection.query('USE '+TEST_DATABASE); return connection; } module.exports=_db;
windsor0646 2013-06-06
  • 打赏
  • 举报
回复
可以看看mysql那一块的官方范例,这里不需要return connection,如果要把js文件当模块,可以写成以下文件mysqlTest.js,然后要用的地方就var mt=require(mysqlTest.js);mt.query("select * ..."),大体上是这样做,我之前参考官方范例试了一下的。

var mysql = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'me',
  password : 'secret',
});

connection.connect();
this.query=function(_sql){
connection.query(_sql, function(err, rows, fields) {
  if (err) throw err;
  return rows;
});
}
connection.end();
c2u 2013-06-06
  • 打赏
  • 举报
回复

var _db={
conn:{}
};
_db.conn=function(){
var mysql = require('mysql');
var TEST_DATABASE = 'nodejs_db';
 
var connection = mysql.createConnection({
    host : 'localhost',
    user : 'root',
    password : 'root',
 
});
connection.query('USE '+TEST_DATABASE, function(err, data) {
    console.log(arguments);

    connection.query('select * from username', function(err, data) {
        console.log(arguments);
    }
});

return connection;
}
注意JS所有操作都是异步的,返回都要在回调里。
JadeZLY 2013-06-06
  • 打赏
  • 举报
回复
引用 2 楼 zhs077 的回复:
去Cnodejs社区,那里专业
那里专业,那你跑到这里来干嘛?奇葩

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧