回答
经上所记,你的功能不势必任何特定的语境,所以this
将参照window
对象,这是最顶部的上下文。
您应该使用Function.prototype.bind使您的功能绑定到您的特定上下文。
console.log(this.titles.find(this.findStart.bind(this)));
仍然返回undefined。下面是它在chrome devtools控制台中的样子: console.log($ vm.tiles.find($ vm.findStart.bind($ vm))); >未定义 也... $ vm.tiles >(8000)[对象,...,对象...] $ vm.room.startX > 610 $ vm.room.startY > 453 console.log($ vm.tiles.find(value => value.x == 2 && value.y == 2)); >对象... //正确回应 console.log($ vm.tiles.find(value => value.x == $ vm.room.startX && value.y == $ vm.room.startY)) > undefined –
对不起,我的评论格式很糟糕...... –
FWIW,Vue方法在实例化时绑定到Vue实例,所以这不会做任何事情。 – Bert
“这”函数内只拥有该函数中的代码,所以我假设你要拨打的房间变量,但在此之前,你必须绑定“这种”与拥有室内物体的 对象
顶层对象是Vue的实例,然后* .data.room 新的Vue({ EL: '#APP', 数据:{ 室:{ 数:20, STARTX:3, startY:3 }, –
- 1. 帮助使用此代码
- 2. 如何使用此代码
- 3. 如何在此代码中使用HostingEnvironment.MapPath()
- 4. 使用此悬停功能> find
- 5. 通过使用此代码在viewDidLoad中的代码
- 6. 无法使用此代码在强烈签署的Silverlight代码
- 7. 如何在ruby代码中使用find,-exec和cp命令?
- 8. 此代码是否可用?使用Javascript/asp.net(代码不工作)
- 9. 如何使用此动画代码?
- 10. 如何使用此代码执行@ Html.DropDownListFor?
- 11. 如何使用haml编写此代码
- 12. 如何使用Typescript简化此代码?
- 13. 如何使用此代码实现globalToLocal?
- 14. PHP代码:使用此关键字
- 15. 如何使用mysqli编写此代码?
- 16. 使用循环缩短此代码(javascript)
- 17. 如何使用此Ftp代码
- 18. 如何使用RSpec测试此代码?
- 19. 如何使此代码更通用
- 20. 如何使此代码通用
- 21. 使用%模数理解此Javascript代码
- 22. 如何使用此复制代码
- 23. 请解释此代码使用std :: ignore
- 24. 如何使用SENDER优化此代码?
- 25. 此代码使用的语言
- 26. 为什么不能使用此代码?
- 27. 如何使用SubSonic编写此代码?
- 28. 如何使用此Ruby代码?
- 29. 智者使用此代码回路
- 30. 使用vue.js
findStart是Vue的一种方法吗? Vue的瓷砖和房间数据属性? – Bert
是的,findStart是一种方法。瓷砖和房间是数据属性。 –
所以事实证明,找到方法不是问题。在装载我运行一个函数,指定this.room.startX = this.getRandom(0,1000);如果我评论这项任务,那么这个发现完美无缺。那么this.room.startX实际上被定义为函数getRandom()?如果是这样,为什么typeOf(this.room.startX)显示为“数字”? –