node.js - 导出的对象为空
问题描述
两天以来,我一直在为不应该阻止我的事情而苦苦挣扎。
基本上,我正在构建一个使用 Express 的 nodeJS 应用程序。在我的主文件(位于我的根文件夹中)中,我正在导出一些变量/常量,出于示例的目的,我将它们替换为:
// ./index.js
const test = 'test'
module.exports = { test }
... some express initialization/routers
然后我有另一个文件,我想在其中使用“测试”变量,所以我需要我的主文件:
// ./aaa/bbb/ccc/test.js
const { test } = require('../../../index);
const myRouter = require('express').Router();
myRouter.get('/', function (req, res){
console.log(test) // undefined
})
我真的不知道为什么当我正确导出它并通过我的 require 语句“导入”它时它会未定义。
我还尝试“安慰”我应该收到的整个对象,但它是空的:{}
编辑:我正在执行的“主”脚本确实是 index.js,但我非常怀疑这是问题的原因
我真的不知道可能是什么问题,我需要导出一些变量才能在我的项目中访问它们
谢谢!
解决方案
我认为你做对了。问题可能是es6
您的节点版本不接受功能。试试看:module.exports = { test:test }
.
推荐阅读
- teradata - teradata 中的正则表达式
- java - 将新列属性添加到 shapefile 并使用 Geotools Java 将其保存到数据库
- reactjs - Razorpay installation in react js
- delphi - Font.charset being changed to ANSI when loading files
- android - How to send Image from database to gallery android studio
- ruby-on-rails - how to access specific ActiveStorage image in multiple images
- ionic-framework - hello,how can i use (click)="{{}}" in ionic
- javascript - html 5拖放在移动屏幕上不起作用
- selenium - How to change already set chrome options while running tests?
- scala - how to do non blocking wait on a future for 10 seconds?