Javascript 只能从复选框事件访问一个类变量
我确信这是一个新手的错误,所以请原谅我,因为我(本周)是安格拉斯的新人 我有一个输入,它是一个复选框,如下所示,它连接到一个ng更改事件Javascript 只能从复选框事件访问一个类变量,javascript,angularjs,typescript,events,Javascript,Angularjs,Typescript,Events,我确信这是一个新手的错误,所以请原谅我,因为我(本周)是安格拉斯的新人 我有一个输入,它是一个复选框,如下所示,它连接到一个ng更改事件 <input type="checkbox" ng-model="vm.hasCondoKey" ng-change="vm.onKeyCheckboxChange()" /> “CondoKeyController”嵌套在父级中,父级通过指令将数组“additionalItems”传递给该控制器。我可以在其他函数中看到这些其他变量,当构造控制器
<input type="checkbox" ng-model="vm.hasCondoKey" ng-change="vm.onKeyCheckboxChange()" />
“CondoKeyController”嵌套在父级中,父级通过指令将数组“additionalItems”传递给该控制器。我可以在其他函数中看到这些其他变量,当构造控制器时,它们可以很好地将其放入这个控制器中
我的问题是,在函数“onKeyCheckBoxChange”中,我可以访问“this.hasCondoKey”,但无法访问任何其他值,如“this.condoKey”或“this.additionalItems”。
我认为这与我的函数的范围和上下文有关,因为它来自一个checkbox事件,但随后我推断我不应该访问“this.hasCondoKey”值。该值在我的断点中读取为“true”,因此它已从其初始化值更改
有人知道为什么我可以访问一些变量而不能访问其他变量吗?另外,如何访问其他变量
Angularjs 1.6.6
Typescript~2.3.1向方法中添加一些调试帮助日志:
public onKeyCheckboxChange(): void {
console.log("Checkbox changed.");
console.log(this.condoKey);
console.log(this.additionalItems);
// ...
}
检查结果。可能
condoKey
和additionalItems
未定义,这意味着它们从未设置过。感谢Tadija的建议,我将添加该日志记录。我想指出的是,帖子中有一条说明,说明初始化已通过断点-->在构造函数中得到确认。这是一篇很长的帖子,很难分辨出来,对此表示抱歉。实际上,在Tadija的帮助下,我们已经解决了这一问题。我在添加“&&addOn.quantity>0”时心不在焉。在很多情况下都是这样,但不是少数。很抱歉打扰您…这是我在没有咖啡的情况下编写代码时发生的情况…很高兴能提供帮助!祝你好运,把咖啡放在附近!在方法中记录这两个字段是否显示了什么?你能解释一下“我无法访问任何其他值”是什么意思吗?你有例外吗?编译错误?
public onKeyCheckboxChange(): void {
console.log("Checkbox changed.");
console.log(this.condoKey);
console.log(this.additionalItems);
// ...
}