[英]how to run different .js file in one server.js file in NODE JS?
這是demo.js文件,我想在server.js文件中使用此文件,以便可以在一個服務器文件中使用不同的js文件。
Demo.js:
app.get('/add User', function (req, res) {
var MongoClient = mongodb.MongoClient;
var url = 'mongodb://localhost:27017/project';
MongoClient.connect(url, function (err, db) {
var collection = db.collection('users');
collection.find({name: 'shruti'}).toArray(function (err, result) {
console.log(, result);
db.close();
});
Server.js:
var a = require('./demo.js');
vr http=require("http");
var server = http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/html"});
response.write(a);
res.end();});
server.listen(7860);
可能的示例如下:
demo.js
var myModule = {
defineRoutes: function(router){
//do something...
}
}
module.exports = myModule;
server.js
var myModule = require('demo.js');
myModule.defineRoutes(router);
如前所述,您需要導出。 當您這樣做時:
var item = require("mymodule");
Require返回一個對象,該對象是給定文件的module.exports值的引用-在您的情況下為demo.js。
您可以按照某些人向您展示的方式編寫模塊。 因為它是封裝的,所以您基本上可以確定什么是公共的或可以調用的。 幾種寫方法-您也可以這樣做:
module.exports = {
yourCall: function () {
console.log("stuff here");
}
};
正如@ishann所說的那樣,他死在這里,您正在寫一些您認為可能已填充的內容。 進入數據庫並返回是一個異步調用-因此需要花一些時間才能執行該操作,然后返回結果。
根據您的結構-理想情況下,您想要做的是分配路由(“ / addUser”),該路由將響應對象傳遞給您:
app.get('/add User', function (req, res) {
var MongoClient = mongodb.MongoClient;
var url = 'mongodb://localhost:27017/project';
MongoClient.connect(url, function (err, db) {
var collection = db.collection('users');
collection.find({name: 'shruti'}).toArray(function (err, result) {
console.log(, result);
db.close();
// set the type
res.writeHead(200, {"Content-Type": "application/json"});
res.write(result);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.