scalajs触ってみたよ
scalajsとは
altJS(代替JavaScript言語)の一種でTypescriptのscala版と思えばいい
最終的にはjsファイルが作成されてnodeやbrowserなどで動かす前提です。
- jarなどは読み込めない
- あくまでjavascript(node)を作成する
JavaScript facades
JavaScript facadesjavascriptのライブラリをscalajsで取り扱えるようにした物
t.ds(型定義ファイル)と思ってます。
なのでscala-js-ts-importerなどのTSからのコンバーターなどもありますね。
Compatible Scala libraries
scalaをscalajsに互換性を持たせるようにしたライブラリって認識をしてる。
google functionsのサンプル触る
2m/gcf-scalajs.g8
これがそのまま参考になった。ただ一部gcloudのコマンド周りの変更?があったので
こちらでハマった
build.sbt
s"gcloud functions deploy \$functionName --local-path \${gcTarget.getAbsolutePath} --stage-bucket \${name.value} \$trigger --runtime nodejs8 --project \$projectId --region us-central1"!
}
この部分はコマンド実行してました。
$ cd target/gcloud
$ gcloud beta functions deploy $functionName $trigger --runtime nodejs8 --stage-bucket ${name.value} --project $projectId --region asia-northeast1"
など書き換えが必要? --local-path がbataだとなかったので。beta有り無しがよくわかってない。
感想
ほとんどの参考はすでにqiitaに上がってる物を触るのがいいかと思える。
たぶんsalaをやってる人が前提node(javascript)をこれから触る必要がある場合には
選択肢のひとつとして必要になるかと。
ただnodeなどfrontに精通してる場合には、素直にtypescriptで進めるほうが
わかりやすいと思います。