我是NodeJS开发的新手,我已经设置了Visual Studio Code来为节点应用程序开发JavaScript。
我正在关注Pluralsight的讲座,我们刚刚进入了关于Objects的部分。老师做的是制作两个脚本,dice.js
和program.js
并将它们放在同一个文件夹中。我做了同样的事。
他们看起来像这样:
dice.js:
var die = {
size: 6,
totalRolls: 0,
roll: function() {
this.totalRolls++;
return Math.ceil(this.size * Math.random());
}
};
exports.game = die;
program.js
var dice = require("./dice");
var die = dice.die;
die.size = 10;
console.log(die.roll());
console.log(die.roll());
console.log(die.roll());
console.log("Total rolls " + die.totalRolls);
console.log(die);
每当我尝试通过Visual Studio Code运行program.js文件时,它会告诉我该属性" size"未定义。如果我尝试使用点连接器,我会得到这个:
所以尺寸不在那里。教练程序工作得很好,但我这样做一直给我错误。我到处寻找,试着去理解可能出错的地方。我的猜测是我没有正确使用require()
或其他东西。来自强类型编译语言,这对我来说非常困惑。
我错过了什么?
答案 0 :(得分:3)
你导出一个叫做游戏的东西,但导入死亡,所以自然这不会起作用。
// dice.js
exports.game = die;
// program.js
var dice = require("./dice");
var die = dice.die; // <- this is wrong, change to .game:
var die = dice.game;