Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Commonjs pb exports do not carry intellisense

Ouverte
#18 4 commentaires 7 réactions 1 personne assignée Voir sur GitHub

@lukesandberg y travaille déjà.

Depuis le 9/6/2021.

Évaluation

Cette issue n'a pas encore été évaluée.

Description

enhancement good first issue javascript triaged

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

What operating system (Linux, Windows, ...) and version?
Ubuntu 20.04, x86_64

What runtime / compiler are you using (e.g., python version or gcc version)
protoc pre-built compiler

What did you do?
Steps to reproduce the behavior:

  1. Create a sample protoc file, here simple.proto. I took it from this example, modified to "proto3"
  2. Use the compiler to autogen JavaScript code: protoc --js_out=import_style=commonjs,binary:. simple.proto
  3. Use the default export as an object with expected Schema: const Schema = require('./simple_pb');
  4. Attempt to use the expected Class(es) on that object: const test = new Schema.Test1();
  5. See that you do not receive intellisense for the Test1() class, nor for expected operations it's instances

What did you expect to see
Intellisense for the simple_pb operations on the default export.

What did you see instead?
No Intellisense, but the operations themselves do execute (setting values, serialzing to Binary).

I was able to "fix" the issue by changing the last line of the simple_pb.js file. The goog export extension did not work, so I just commented it out and spread the goog and proto objects into module.exports:

module.exports = {...goog, ...proto};
// goog.object.extend(exports, proto);
Langage dominant
JavaScript
Étoiles
471
Forks
91
Merge moyen
1 j 12 h
PR mergées (30 j)
6

Préparer son environnement

Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de protocolbuffers/protobuf-javascript

Toutes les issues de protocolbuffers/protobuf-javascript

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.