Javascript 无法使精灵交互正常工作

Javascript 无法使精灵交互正常工作,javascript,html,interaction,pixi.js,Javascript,Html,Interaction,Pixi.js,我正在尝试构建一个简单的游戏菜单,其中包含一些可点击的精灵,这些精灵将被用作在菜单中导航的按钮 (我正在使用最新的pixi.js(v4.3.5)) 我的应用程序结构: loader.module(使用pixi.loaders.loader) events.module(基本事件订阅/发布模块) base.view menu.view(扩展base.view) 游戏主机 这一切现在是如何运作的? 在初始化视图之前,必须显式定义所有资源和ui元素 因此,在menu.view中,必须定义以下属性

我正在尝试构建一个简单的游戏菜单,其中包含一些可点击的精灵,这些精灵将被用作在菜单中导航的按钮

(我正在使用最新的pixi.js(v4.3.5))

我的应用程序结构:

  • loader.module(使用pixi.loaders.loader)
  • events.module(基本事件订阅/发布模块)
  • base.view
  • menu.view(扩展base.view)
  • 游戏主机
这一切现在是如何运作的?

在初始化视图之前,必须显式定义所有资源和ui元素

因此,在menu.view中,必须定义以下属性

    this.resources = [
      { name: 'start', src: 'img/start.png'},
      { name: 'start2', src: 'img/start2.png'}
    ];

   this.ui = [{
        name: 'start', /// resource name
        type: 'img',
        pos: { x: 0, y: 0 }
   }];
现在我只需要调用
view.init()
就可以加载并绘制所有内容。在视觉方面,evrything工作得很好,但是“开始”精灵(它的
交互式
按钮模式设置为
true
)不会对任何鼠标事件做出反应

下面的方法负责获取所需的资源并返回一个新的sprite。它还支持作为此过程一部分的实际交互功能。但由于某种原因,测试功能从未触发

__getSpriteObject( element ){
        let sprite = new PIXI.Sprite( this.loader.loader.resources[ element.name ].texture );
        sprite.x = element.pos.x;
        sprite.y = element.pos.y;

        sprite.interactive = true;
        sprite.buttonMode = true;
        console.log( sprite )

        sprite.on('pointerdown', function(){
            console.log("what")
        })
        return sprite;
    }
如果上面的信息还不够,这里还有一份工作。

我在这里回答了这个问题:在任何情况下,其他人都很好奇