shion のアバター画像もくもくログページ一覧ブログ一覧技術メモ一覧ライセンス表記利用規約外部リンクconnpassGitHubSpeaker DeckTwitter[工事中]Shion のもくログバージョン1.2.5

もくもくログ

主にIT 関連のメモをもくもくと綴っていきます

最終更新日:2021/07/17 13:34:072021/07/10 ~ 2021/07/16 のもくもく日記活動記録

もくもく 前回までは

2021/07/03 ~ 2021/07/09 のもくもく日記 をご覧ください。

今回の目標

  • 自作ブログの強化

途中経過

その1

stencil コンポーネントをAngular で使おうとしたら何故かエラーになった件、
proxies のほうはともかく、他はこれで直ったかも。

https://github.com/ionic-team/stencil-ds-output-targets/compare/v0.0.6...@stencil/angular-output-target@0.0.7

……と思ったら、Stencil コンポーネントで@Event() を宣言して、
Angular でそれを呼び出してみたのだけど、下記のエラーがががorz

error TS2339: Property 'subscribe' does not exist on type 'EventEmitter'

angular のprod build をかけるとダメだった。
このIssue を参考にStrictTemplates を調整してみたけど、
これが何の設定なのかよう分かってないw

https://github.com/ionic-team/stencil-ds-output-targets/issues/155

その2

自作VSCode 拡張機能って、何か表示するときはWebView と格闘することになると思うけど、この記事わかりやすいかも

https://developer.salesforce.com/jpblogs/2021/05/how-to-build-webview-powered-vs-code-extension-lwc-jp/

その3

まずはtsconfig の設定を、モノレポの各パッケージで共通化しようとしてみた

公式に推奨設定が書いてあるのだけど、いろいろコード引っかかってしまったw
https://typescriptlang.org/ja/tsconfig

その4

以前、表示を含まないBlazor Wasm を自作VSCode 拡張機能に組み込んだことがあるのだけど、
同じノリで表示を含んだBlazor も行けるだろと思ったら、blazor.boot.json に阻まれてしまったorz

大まかな仕組みを説明すると、Blazor を発行すると、
blazor.webassembly.js で色々なdll などをajax 要求している。
その際、VSCode のWebView のセキュリティに適合したURL でないと接続できないので、
発行されたファイル内の下記のあたりを書き換える必要がある。

  • HTML のbase タグ(相対パスでdll などをajax 要求している箇所があるため)
  • blazor.webassembly.js 内のblazor.root.json

で、出来ると思ったのだけど、
そもそもVSCode のWebView のセキュリティに適合したURL って、
Blazor 側で取り扱えず、Systeml.UriFormatException が起きてしまうので、
Blazor + UI の構成は、VSCode に梱包するのは無理だという結論になった。

なので、Blazor でUI を含めず、純粋ロジックのみする方針に切り替えようと思う。

今回の成果

関連リンク

参考文献

Active なGitHub リポジトリ

一覧に戻る