Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

The generated commonjs `*_pb.js` files don't work in Node.js environment

Offen
#8 9 Kommentare 7 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Ein zugehöriger Pull Request wurde bereits gemerged.

  • #106 von @alias-rahil — gemerged

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
javascript, node.js
Bereich
backend

Rechercherichtung

Reproduziere das Problem mit dem gezeigten protoc-Befehl und Node.js v16.13.0 und untersuche anschließend den generierten *_pb.js-Code im Bereich der globalen Initialisierung in Zeile 16. Vergleiche das Verhalten mit den protobuf-Versionen 3.19.1–3.19.4; abgeschlossen ist die Aufgabe, wenn die generierten CommonJS-Dateien in Node.js ohne einen window-Fehler importiert und verwendet werden können.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

javascript question

This bug is a rebirth of protocolbuffers/protobuf#9152, which has already been fixed in v3.19.1. It seems the fix hasn't been delivered to the latest version.

What version of protobuf and what language are you using?
Version: v3.20.1
Language: Javascript

What operating system (Linux, Windows, ...) and version?
macOs Monterey v12.3.1

What runtime / compiler are you using (e.g., python version or gcc version)
Node.js v16.13.0

What did you do?

  1. Run protoc --js_out=import_style=commonjs,binary:path/to/out/dir --proto_path=. *.proto
  2. Try to import and use the generated *_pb.js files.

What did you expect to see
Import and use without errors (just as in 3.19.1 - 3.19.4).

What did you see instead?

ReferenceError: window is not defined

   14 | var jspb = require('google-protobuf');
   15 | var goog = jspb;
 > 16 | var global = (function() { return this || window || global || self || Function('return this')(); }).call(null);
Vorherrschende Sprache
JavaScript
Sterne
470
Forks
92
Ø Merge
1 T. 12 Std.
Gemergte PRs (30 T.)
6

Entwicklungsumgebung

  • Kein Dockerfile und keine Docker-Compose-Datei
  • Hat eine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus protocolbuffers/protobuf-javascript

Alle Issues in protocolbuffers/protobuf-javascript

Ähnliche Issues

Weitere Issues zu JavaScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.