怎么正确地在节点js中导出和要求?

本教程将介绍如何正确地在节点js中导出和要求?的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

怎么正确地在节点js中导出和要求? 教程 第1张

问题描述

我在node/express中读到了一篇关于导出/需要的教程,不知道是否有人可以用我的例子给我解释一下:
为什么我在app.js中的路由不起作用?我必须输出和需要什么才能使其正常工作?非常感谢!

index.js:

 'use strict'

 var express = require('express');

 var app = express();
 module.exports = app;

 var PORT = process.env.PORT || 1337;
  app.listen(PORT, function() {
  console.log('Server is listening!');
 })

app.js:

 var express = require('express');
 var bodyParser = require('body-parser');
 var path = require('path');
 var app = express();
 //var app=require('./index.js');
 module.exports = function() {
  app.use(express.static(path.join(__dirname, '../public')));
  app.use(express.static(path.join(__dirname, '../browser')));
 }

推荐答案

    您的示例将无法正常工作,至少是因为您在两个文件中声明了两个单独的Express服务器var app = express()

    此代码不是最适合用于导出/请求的代码,因为此类服务器初始化通常放在一个文件中。

但不管怎样,如果你想使用这个例子并让它工作,我们就这样做:

./index.js

'use strict'

var express = require('express');
var setupServing = require('./setupServing.js'); //import our function
var PORT = process.env.PORT || 1337;

var app = express(); //create express app
setupServing(app); //call imported function to config our app

app.listen(PORT, function() { //start
 console.log('Server is listening!');
})

./setupServing.js

var express = require('express');
var path = require('path');
//export function which can configure static serve for app
module.exports = function(app) { //take app as an argument
 app.use(express.static(path.join(__dirname, '../public')));
}

请注意,此示例仍然不够合理,我认为您不会在任何实际项目中遇到这样的代码,但无论怎么,它都会工作,并演示NodeJS中的导出/要求。

好了关于怎么正确地在节点js中导出和要求?的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。