Open
Description
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:
- Create a sample protoc file, here
simple.proto
. I took it from this example, modified to "proto3" - Use the compiler to autogen JavaScript code:
protoc --js_out=import_style=commonjs,binary:. simple.proto
- Use the default export as an object with expected Schema:
const Schema = require('./simple_pb');
- Attempt to use the expected Class(es) on that object:
const test = new Schema.Test1();
- 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);