Shion のもくログ(旧: Shion の技術メモ)

使った技術のメモや、うまくいかなかった事とかを綴ります

PR

2023/02/25 ~ 2023/03/03 のもくもく日記

もくもく 前回までは

2023/02/18 ~ 2023/02/24 のもくもく日記 をご覧ください。

途中経過

その1

Kolin Multiplatform Mobile のshared 配下の構成を見て、test をmain の方に混ぜてほしいな……なんて思ったけど、よく考えたらビルドバリアントやんw

  • androidMain
  • androidUnitTest
  • commonMain
  • commonTest
  • iosMain
  • iosTest

その2

KMM でOkHttp やRetrofit 使えると思い込んでいたけど、どうやら難しそう……

Ktor などを調べてみっか💪

"io.ktor:ktor-client-okhttp" という表記を見て、自分勘違いしちゃった気がしてきた

上記はAndroid 向けの依存関係の記述で、iOS 向けは"io.ktor:ktor-client-darwin" だった👀

https://ktor.io/docs/getting-started-ktor-client-multiplatform-mobile.html#ktor-dependencies

その3

KMM をSwift で使う時って、class がstruct にならんのかorz

Swift はcopy on write の仕組みがあり、そのおかげでstruct ベースで実装していくイメージがあるから、その恩恵が減っちゃいそうで、ちと悲しいかも……

その4

VSCode WebView から拡張機能へデータを流すときのメソッドpostMessage() の引数に型を指定しようと思ったけど、見た感じ出来なさそう……

https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/vscode-webview/index.d.ts#L12-L36

その5

TypeScript って、文字配列をリテラル型に変換する記法があるっぽい👀

知らんかったw

https://typescriptbook.jp/tips/generates-type-from-array

その6

【昨日の記録】 TypeScript で自作ライブラリを準備し、Vite + Vue 3 で読み込んでみたら、RollupError になって、時間が溶けたorz

原因はライブラリ出力がCommonJs だったからで、それをes に変えたら上手く動いた

※ローカルで完結するライブラリなので、npm 発行する際は、慎重に🙇

今回の成果

※関連Tweet
PR