我创建了一个仅包含可导出函数的 JavaScript 文件:
export function addImageToCanvas(imagePath, spriteX, spriteY) {
const loader = new PIXI.Loader();
loader.add('image', imagePath);
loader.load((loader, resources) => {
createSprite(resources.image.texture, spriteX, spriteY);
});
function createSprite(texture, x, y) {
const sprite = new PIXI.Sprite(texture);
sprite.x = x;
sprite.y = y;
app.stage.addChild(sprite);
}
}
我正在尝试在我的 game.js 中使用它:
import { addImageToCanvas } from "./imageLoader.js";
var cloudExists = false;
app.ticker.add(gameLoop);
app.ticker.start();
function gameLoop(delta) {
drawCloud();
}
function drawCloud() {
if (cloudExists == false) {
addImageToCanvas("images/cloud.png", 200, 200);
cloudExists = true;
}
}
“app”在画布“config”文件中定义:
window.app = new PIXI.Application(
{
width: window.innerWidth,
height: (30 / 100) * window.innerHeight,
backgroundColor: 0x77adf7
}
);
document.body.appendChild(app.view);
function resize() {
const newWidth = window.innerWidth;
const newHeight = (30 / 100) * window.innerHeight; // 30% of window height
app.renderer.resize(newWidth, newHeight);
}
window.addEventListener('resize', resize);
我正在尝试创建一个图像加载函数,但它会给我错误“Uncaught TypeError: PIXI.Loader is not a constructor”。
我用 PIXI.Application 解决了这个问题,但是一旦我切换到这个 pixi.js [https://pixijs.download/release/pixi.js](教程中的 Pixi.js),我就解决了它,但现在我是PIXI.Loader 有问题。
该功能部分由 ChatGPT 制作,但由于 pixi.js 文件中提到了 PIXI.Loader,因此不应该出现此错误。
如果这些信息还不够,那么我可以提供更多。
Stackoverflow 将为您提供我拥有的代码(如果您要求它使其成为一个函数),请不要使用它,因为 PIXI.Loader 已被弃用。
一个简单的片段就可以了:
const Image = PIXI.Sprite.from("images/image.png")
app.stage.addChild(Image);