JS、WebPack、不使用 Phaser3 动态加载图像超越 IO 游戏的预加载功能

JS, WebPack, Not Dynamically Loading Images Using Phaser3 Beyond Preload Function For IO Game

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

在 index.js 我在移相器的 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 捆绑在一起

Except if they are "inlined" in the main.js, I think images are not be inlined automatically/without plugin, or atleast in the version I used to use.

所以从开发服务器提供的所有文件都必须在这些文件夹中。

我会将 images/assets 放入那个 ./public 文件夹中,然后它们应该是可见的。

Info: I tripped over this once, files placed in ./public folder are accessed, as if they would be in the ./dist folder.