无法设置未定义 4 的属性“大小”
Posted
技术标签:
【中文标题】无法设置未定义 4 的属性“大小”【英文标题】:Cannot set property 'size' of undefined 4 【发布时间】:2018-12-22 09:30:16 【问题描述】:我是使用 node.js 的新手,我收到这些错误:
TypeError:无法设置未定义的属性“大小” 在对象。 (C:\Users\User\Documents\latihannode.js\javascript4\test\script 4.js:4:10) 在 Module._compile (internal/modules/cjs/loader.js:678:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10) 在 Module.load (internal/modules/cjs/loader.js:589:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:528:12) 在 Function.Module._load (internal/modules/cjs/loader.js:520:3) 在 Function.Module.runMain (internal/modules/cjs/loader.js:719:10) 启动时(内部/bootstrap/node.js:228:19) 在 bootstrapNodeJSCore (internal/bootstrap/node.js:576:3)
在通知中这是错误代码:
die.size = 10;
这是页面 script4.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(die.totalRolls);
console.log(die);
这是在页面 dice.js 中:
var die =
size: 6,
totalRolls: 0,
roll: function()
var result = Math.ceil(this.size * Math.random());
this.totalRolls += 1;
return result;
;
exports.game = die;
exports.name = "My dice exports";
【问题讨论】:
您检查过dice
是否为空吗?
问题是 die
是未定义的,正如它在错误消息中所说的那样。 dice
有 die
导出吗?
您的命名似乎是矛盾的:您正在尝试访问您不导出的东西 - 可能希望在进一步了解之前弄清楚。
我已经在 dice.js 中给出了 export die 但我认为需要 @torazaburo
今天骰子问题太多了。猜猜新学期开始了,班里的每个人都在问问题。该错误清楚地表明dice.die;
未定义。看看你的出口,你看死了吗?不,我看到游戏和名称。基本调试var dice = require('./dice'); console.log(dice);
【参考方案1】:
在这里更改:
var dice = require('./dice');
var die = dice.game; // not die.die
【讨论】:
以上是关于无法设置未定义 4 的属性“大小”的主要内容,如果未能解决你的问题,请参考以下文章