当我第一次运行时,我得到了未定义。 我认为这个错误非常小,但我如何解决这个错误呢?#34;进入"将打印错误而非未定义
main.js:
var enter = false;
module.exports = onProximityBoolean(enter);
function onProximityBoolean(enter) {
if (enter === true) {
return true;
} else {
return false;
}
}
first.js:
var main =('main.js').onProximityBoolean;
console.log(main);
答案 0 :(得分:1)
var enter = false;
function onProximityBoolean(enter) {
if (enter === true) {
return true;
} else {
return false;
}
}
module.exports = onProximityBoolean(enter);
然后像这样使用它:
var main = require('./main.js');
console.log(main);
如果您想将其用作var main =('main.js').onProximityBoolean
,则需要将exports
的定义更改为:
module.exports.onProximityBoolean = onProximityBoolean(enter);
答案 1 :(得分:0)
您需要在代码中实际需要main.js
。而不是var main =('main.js').onProximityBoolean;
,请使用var main = require('main.js');
。然后console.log(main)
将返回false(从main.js
导出的值)。
如果您在浏览器中使用它,则必须使用Browserify或Webpack来构建包含所需文件的包。如果您只是使用Node,它将按原样运行。
修改强>
在onProximityBoolean
函数中,没有必要检查enter === true
。您实际上可以根据传入的参数将该函数更改为仅返回true
或false
:
function onProximityBoolean(enter) {
return enter; // if enter is always `true` or `false`
}