我無法要求將我的./db/index.js
中的方法放入我的server.js
文件中,以便從數據庫中選擇數據並顯示它。使用Node.js從其他文件調用方法
的/db/index.js
是這樣的:
'use strict';
const pgp = require('pg-promise')();
const pg = pgp(process.env.DATABASE_URL);
let select =() => {
pg.any('SELECT username, status FROM status')
.then(function(data){
for (var item of data) {
return item.username + "'s status is " + item.status;
}
})
.catch(function(err) {
return 'Error: ' + err.message || err;
});
};
module.exports =() => {
select
};
,我想它從不同的文件中稱:
'use strict';
const port = process.env.PORT || 3000;
const bodyParser = require('body-parser');
const express = require('express');
const app = express();
const db = require('./db/');
app.use(bodyParser.urlencoded({extended: true}));
app.post('/logdash', function(req, res, next) {
res.status(200).send(db.select());
});
app.listen(port, function() {
console.log('Server is running on port', port);
});
我使用Heroku的,像這樣,看日誌,終端和Slack都沒有顯示錯誤(這是一個斜槓命令)。我無法找到如何正確分離功能的幫助。我怎樣才能調用這個select
方法以及來自不同文件的其他方法?
Hi @ vitaly-t,錯誤'db.map不是函數'現在正在顯示。 – mfgabriel92
@GabrielMFernandes如答案中所述,「代碼基於pg-promise v.4.3.x(升級,如果你有一個較舊的)」。 –
就是這樣。像這樣,它工作得很好。我看了一下你建議我看的存儲庫,這非常有趣。謝謝。 – mfgabriel92