Hallo Ich benutze den folgenden Code zu versuchen, einen Hintergrund für mein Spiel zu zeichnen, aber ich bekomme immer die Fehlermeldung und ich konnte nicht herausfinden, warum dies passieren würde.Kann Bild nicht mit Webpack-Dev-Server in Nodejs laden
Das ist mein main.js
:
this.background = new Image();
var context = document.getElementById('canvas').getContext('2d');
var loaded = false;
var drawBackground = function() {
loaded = true;
var pattern = context.createPattern(this.background, 'repeat');
context.fillStyle = pattern;
context.fillRect(0, 0, 10000, 10000);
}
this.background.onload = drawBackground;
this.background.src = "../images/bg.jpg";
setTimeout(function() {
if (loaded) {
console.log('success');
} else {
console.log('falilure');
}
}, 3000);
Meine Dateiverzeichnisstruktur sieht wie folgt aus:
- dist
- static
- bg.jpg
- bundle.js
- images
- bg.jpg
- src
- main.js
- server.js
ich versucht habe this.background.src
-./static/bg.jpg
ändern, aber es funktioniert immer noch nicht.
Ich verwende meinen Code auf einem Webpack-dev-Server mit dem Befehl npm run dev
. In der Produktion werden der Quellcode und die statischen Dateien in das Verzeichnis dist
kopiert und gebündelt. Aber ich benutze den Entwicklungsmodus, also denke ich, dass das Bild noch nicht kopiert wurde. Warum wird mein Bild nicht geladen?