包含nodejs的nodejs响应对象

时间:2018-04-20 19:49:48

标签: node.js

我有"全球"可以在我的nodejs程序中调用的变量。我只想将我的响应对象包装到" global"变量

我可以用这个渲染:

http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('Hello World\n');
}).listen(8081);`

但不是这样:

global.render : function(res,result){
  **res.writeHead(200,{'Content-Type': 'text/plain'});**
  res.end(''+ result);
}

使用;

global.render(res, 'this just in html');

这个粗体行给了我一个错误。不知道了吗?

1 个答案:

答案 0 :(得分:0)

避免使用global s。

当某些代码可以替换您的全局变量/函数/类时,您可能会遇到这种情况。

所以就像模块一样:

lib/render.js

module.exports = (res, body) => {
  res.writeHead(200,{'Content-Type': 'text/plain'});
  res.end(body);
}

并在您的代码中使用它:

const render = require('./lib/render');

http.createServer((request, response) => {
    if (request.url === '/') {
      return render(response, 'Hello World');
    }
    render(response, 'URL: '+request.url);
}).listen(8081);