Ich habe versucht, grundlegende Javascript mit Webpack zu implementieren, aber habe viel Mühe gefunden, grundlegende Methoden zum Arbeiten zu bekommen. Ich weiß, es ist wahrscheinlich ein Problem mit meiner js vor dem DOM zu laden, aber alle meine Korrekturen zu diesem Thema waren sinnlos.document.getElementById funktioniert nicht mit Webpack
Zum Beispiel, ich versuche nur let taskinput = document.getElementById('new-task');
zu laufen und wenn ich die taskinput Variable in der Konsole suchen erhalte ich eine Rückkehr von Uncaught ReferenceError: taskinput is not defined(…)
.
Ich habe einige verschiedene Lösungen versucht, damit dieser Code funktioniert, nachdem das DOM geladen hat, aber nichts scheint zu funktionieren.
Ich versuchte den grundlegenden Versuch, nur meine Javascript-Datei am unteren Rand des DOM zu setzen.
Ich habe wie so eine grundlegende js Methode versucht:
document.onreadystatechange = function() {
if (document.readyState === "complete") {
initApplication();
}
function initApplication() {(... placed code in here ...)}
Ich habe versucht, jqueries
$(document).ready(function() { });
Ich habe versucht, die Injektion meine Javascript-Datei in meinen HTML mit dem html- mit webpack-plugin
Gibt es etwas, das ich mit Webpack vermisse?
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Sample Site</title>
<meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body>
<button id="new-task">click</button>
<script src="/assets/app.bundle.js"></script>
</body>
</html>
app.js
'use strict';
document.onreadystatechange = function() {
if (document.readyState === "complete") {
initApplication();
}
}
function initApplication() {
onButtonClick();
}
let onButtonClick = function() {
let taskInput = document.getElementById('new-task');
taskInput.onclick = alert('hey');
}
Ok, aber wie soll ich dann effektiv mit dem DOM kommunizieren? Ist es zwingend erforderlich, eine HTML-Templating-Sprache zu verwenden oder den gesamten HTML-Code der Seite mit JavaScript zu generieren, während Sie das Webpack verwenden? – Jleibham
"Ok, aber wie soll ich dann effektiv mit dem DOM kommunizieren?" Im Allgemeinen möchten Sie Herstellercode wie 'jQuery' in den Kopf der Seite einfügen, da dieser höchstwahrscheinlich nicht vom DOM-Status und Ihrem eigenen Code abhängt, der mit dem DOM am unteren Rand der Seite interagieren kann Body-Tag, nach allem anderen. Vielleicht verstehe ich nicht, was Sie genau fragen. In welchem Fall können Sie ein Beispiel geben? –
Ich meine, ich versuche ehrlich gesagt nur eine einfache Alarmbox beim Klicken mit nur Javascript. Ich versuche, mehr über die Sprache von Javascript ohne irgendwelche Schnickschnack anderer Bibliotheken zu lernen. Aber lassen Sie mich einen Beispielcode zeigen, um Ihnen zu zeigen, was ich versuche zu tun. – Jleibham