JS,WebPack,不使用Phase3动态加载图像,超出IO游戏的预加载功能



我制作IO游戏的尝试失败了,因为我无法在使用WebPack打包游戏后动态加载图像(一种假设(。当我延迟加载任何资源时,无论它是跨原点的还是本地的,它似乎都不会加载和渲染。

在index.js中,我在phaser的create((中有这个:

this.load.image('arc_red', 'https://art.pixilart.com/187aec08b8014f7.gif');//testing with this   
this.load.once('complete', ()=>{console.log('image loaded!')}, this);       
this.load.start();

当我使用预加载时,它确实起作用。但从动态上看,它并没有。我已经连续找了将近一天了,没有任何运气。

问题:

我的假设正确吗?如果是,在WebPack打包文件后,我可以用什么方法动态加载图像?

我不是webpack专家(取决于webpack版本(,但如果您没有使用webpack.config,默认行为是应该有:

  • webpack捆绑文件被放入./dist文件夹中因此,为了回答您的问题,任何不在此文件夹中的文件都不会与webpack捆绑在一起

除非它们是";内联的";在main.js中,我认为图像不会在没有插件的情况下自动内联,或者至少在我以前使用的版本中。

  • dev-server提供了一个额外的文件夹,其中"静态";可以放置文件,它是./public(https://webpack.js.org/configuration/dev-server/)

因此,从开发服务器提供的所有文件都必须位于这些文件夹中。

我会把图像/资产放在./public文件夹中,然后它们应该是可见的。

信息:我有一次被这个绊倒了,放在./public文件夹中的文件被访问,就好像它们在./dist文件夹中一样。

相关内容

最新更新