0
0

More than 3 years have passed since last update.

message型をimportしたらundefinedが出た時にするべきVSCodeの設定のお話

Last updated at Posted at 2020-11-17

はじめに

gRPC便利ですね~。
ただgRPCを使っているとファイルのボリュームが増えてきていくつかのファイルにmessageやserviceを分けたいと思う時ありますよね?

大きい .proto ファイルは複数のファイルに分割できます。サービス、リソース メッセージ、リクエスト / レスポンス メッセージは、必要に応じて別々のファイルに移動します。
https://cloud.google.com/apis/design/file_structure

type/* - 異なる API 間、同じ API の異なるバージョン間、または API とサービスの実装間で共有される型を含む proto ファイル。type/* の下にある型定義には、リリース後に互換性を損なう変更を加えるべきではありません。
https://cloud.google.com/apis/design/directory_structure

行く手を阻む undefined エラー

しかし複数ファイルに分け、例えばtypeディレクトリから共通のmessage型をImportして使おうとするとVSCodeでは困ったことになります。

undefinedエラー。。。

まあgRPCが使えないわけではないのですが、なんか気持ち悪い!!
Ctr+クリックで定義にも飛べないし、どうにかしたい!!!!

undefinedエラーを回避する設定

VSCodeで vscode-proto3 を使っている人であれば下記のように grpc/.vscode/settings.json に追加すればこのストレスから解き放たれます。

{
  "protoc": {
      "options": [
          "--proto_path=hoge/pb/type" // protoファイルがあるディレクトリへのパス/
      ]
  }
}

issue:https://github.com/zxh0/vscode-proto3/issues/31

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0