繁体   English   中英

Node.js导出属性

[英]Node.js export properties

我究竟做错了什么? 模块方法getFile的结果始终是未定义的。

这是代码(路由):

let router = { 
paths : {
    'rest' : 'rest.info',
    'data' : 'data-info'
},

getFile : (url) => {
   console.log(this.paths);
}
};

module.exports = {
    router : router
}

这是来自简单服务器的代码:

const http = require('http');
const fs = require('fs');
const router = require('./routing');

http.createServer((req, res) => {
router.getFile('rest');
res.writeHead(200, {'Content-Type': 'text/html'});
fs.createReadStream('./views/myview.html').pipe(res);

}).listen(3000);

尝试const router = require('./routing').router

因为module.exports是一个以router为属性的对象

这也可以通过使用合适的节点版本进行解构来实现:

const { router } = require('./routing');

我相信您只需要像这样使export多元化:

module.exports = {..

希望这可以帮助!

为了访问this.paths请像下面这样更改您的getFile方法:

getFile(url) {
   console.log(this.paths);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM