当我尝试从外部js文件访问对象值时,我收到此错误
TypeError:无法读取未定义
的属性“viewport”
测试diff.js
var GlobalConfigs = require('./global-config.js');
console.log(GlobalConfigs.GlobalConfig.viewport.desktop);
全局config.js
GlobalConfig = {
viewport: {
desktop: "960",
laptop: "320"
},
startPage: "10",
totalPages: "7",
threshold: "5"
}
答案 0 :(得分:4)
您必须使用require
导出要访问的对象。
变化:
GlobalConfig = {
viewport: {
desktop: "960",
laptop: "320"
},
startPage: "10",
totalPages: "7",
threshold: "5"
}
为:
exports.GlobalConfig = {
viewport: {
desktop: "960",
laptop: "320"
},
startPage: "10",
totalPages: "7",
threshold: "5"
};
我也会用数字代替字符串:
exports.GlobalConfig = {
viewport: {
desktop: 960,
laptop: 320
},
startPage: 10,
totalPages: 7,
threshold: 5
};
有关模块需求和导出如何工作的更多详细信息以及exports
和module.exports
之间的区别,请参阅此答案:
有关Node中模块的一般文档,请参阅:
答案 1 :(得分:0)
您应该使用module.exports。使用此代码
GlobalConfig = {
viewport: {
desktop: "960",
laptop: "320"
},
startPage: "10",
totalPages: "7",
threshold: "5"
}
module.exports.GlobalConfig = GlobalConfig;
答案 2 :(得分:0)
我同意列出的其他答案,但是,我认为可能没有必要添加其他变量。
module.exports = {
viewport: {
desktop: 960,
laptop: 320
},
startPage: 10,
totalPages: 7,
threshold: 5
}