我无法从 paddel.js 访问类中的方法以在 input.js 文件中使用它。 但我可以访问它的属性
//inputs.js
import Paddle from './paddel.js'
export default class InputHandler{
constructor(paddle){
document.addEventListener('keydown' , (event)=>{
// console.log(event.keyCode)
switch(event.keyCode){
case 37 : console.log(Paddle.moveLeft)
}
})
}
}
//paddel.js file
export default class Paddle{
constructor(){
this.width=150;
}
moveLeft(){
console.log("go left")
}
}
最佳答案
您正在传递paddle
,然后使用Paddle
。在您的情况下, paddle
是 Paddle
的实例,因此您需要使用该实例并调用该方法,而不是使用该类本身。
export default class InputHandler{
constructor(paddle){
document.addEventListener('keydown' , (event)=>{
// console.log(event.keyCode)
switch(event.keyCode){
case 37 : console.log(paddle.moveLeft())
}
})
}
}
export default class Paddle{
constructor(){
this.width=150;
}
moveLeft(){
console.log("go left")
}
}
const test = new InputHandler(new Paddle());
还可以调用这样的方法moveLeft()
。
关于javascript - 我无法访问类中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55318118/