Tag Typescript

[Deno] ライブラリをimportする

Denoを触ってみた際のメモです。 Denoはnpmなどのパッケージマネージャーは存在しません。 ライブラリを利用するにはライブラリのコードが存在するURLを指定してimportします。 もちろんローカルにあるファイルを相対パスでimportすることも可能です。URL指定したimportの形式は以下のようになります。 例えば、標準のlogパッケージを利用するときは以下のように書きます。 依存しているモジュールはメインの関数を実行するときに、指定されたURLからローカルにダウンロードされます。 2回目の実行時はURLにはアクセスせず、ローカルのダウンロードを利用します。

ブログメトリクスの可視化Webページの技術要素

現在、ブログメンタリングを受けていて、毎週1記事を目標にブログを投稿しています。 ブログメンタリングについては以下の記事を参照してみてください。 メンタリング期間中は毎週メトリクスを確認するように言われていますが、メンタリング開始から数週間たった後に「Web上でメトリクスを可視化できたらいいかも」と思い立ち、メトリクス可視化Webページを作りました。 Webページの画像は以下です。 今もこのWebページを運用していますが、URL一つでブログのメトリクスを参照できるのは結構いいです。 今回はこのWebページの技術要素について書いていきたいと思います。

[ESLint] eslint-plugin-importを利用して自動でimportをアルファベット順にソートする

以前までTypeScriptの開発ではTSLintを使っていましたが、TSLintの開発が縮小されていくということもあり、最近はESLintを利用しています。 TSLintにはimportがアルファベット順に並んでいないと警告を出してくれるorderd-importsというルールがあります。autofixもサポートされており、VSCodeのTSLint拡張を使うと保存時に自動でアルファベット順にソートしてくれていました。 ただ、ESLintに移行するとこれに代替する機能が標準ではありませんでした。

TypeScript 3.7から利用できるOptional Chainingについて

半年ほと前にTypeScript 3.7がリリースされ、Optional Chainingが利用できるようになりました。 ここ最近で仕事でもよく利用しており、とても便利なので紹介したいと思います。nullチェック、undefinedチェック TypeScriptのコードを書いていると、nullチェック、undefinedチェックをするコードはたびたび頻出します。 例えば以下のようなFooという型があったとします。 以下のFooという型はオプショナルなbarというプロパティがあり、barの中にはオプショナルなbazというプロパティがあるとします。

GitHub Integrationを利用して、Next.jsアプリケーションをZeit Nowにデプロイしてみる

Zeit Nowが無料かつデプロイが簡単で良いという情報をみて、 試してみたくなったので実際にデプロイしてみました。Zeit Nowについて Zeit Nowのイントロダクションのページには以下のように書いてありました。 > ZEIT Now is a cloud platform for static sites and Serverless Functions that fits perfectly with your workflow.

Next.jsでNODE_ENVによってAPIリクエスト先を変える

フロントエンドのアプリケーションを書いていると、プロダクション環境と開発環境でAPIの接続先を変えたい時があると思います。 Next.jsには環境変数をビルド時に埋め込むことができ、プロダクション環境と開発環境でAPIの接続先を変えることができます。 本ブログではNext.jsアプリケーションでどのように環境変数を埋め込むかをサンプルを交えて説明します。

AWS CDKを使ってECS(Fargate起動タイプ)を構築する

この記事はTypeScript Advent Calender 2019の5日目の記事です。 投稿が遅くなってしまい、申し訳ありません。さて、AWS CDKがGAになり、役半年くらい経ちました。AWS EKS on AWS Fargateが発表され、かなり熱いFargateですが、今回の記事ではFargate起動タイプのECSをAWS CDKを利用して、構築・デプロイしたいと思います。もちろんTypeScriptのアドベントカレンダーなので、TypeScript版AWS CDKを利用します。現在ではPythonやJava,.NETなど様々な言語でAWS CDKが使えるようです。

TypeScriptのDecoratorsについて調べた

ライブラリ等でよくみるTypeScriptのDecoratorsについて調べてみました。有名なライブラリではTypeORMもDecoratorsを利用しています。Decoratorsは一見するとJavaのアノテーションのようなものです。TypeORMのEntityの定義の例は以下です。

E2Eテスティングフレームワーク、Cypress,TestCafeを試してみた

E2Eテスティングフレームワーク、Cypress,TestCafeを試してみた 最近、注目されつつある2つのE2Eテスティングフレームワークを試してみました。 Cypress TestCafe Cypressは一休さんのブログ,E2EテストをSelenium Webdriver からCypress.io に移行した話でも述べられており、注目されているように感じます。2つのE2Eテスティングフレームワークを触ったのでこれらの違いについて述べていきたいと思います。