管理者

スポンサーリンク
サーバ

[MySQL][Postgres]外部キーがあるテーブルをTRUNCATEする方法

概要 データベースで外部キーがあるテーブルをTRUNCATEしようとするとエラーとなってしまう。例えば、MySQLの場合はCannot truncate a table referenced in a foreign key constraintとなり、TRUNCATEすることができない。 解決方法 一時的に外部キー制約を無効化することで、TRUNCATEすることができる。 MySQLの場合 se...
TypeScript

[TypeScript]関数の型定義

関数の定義 引数のみアノテートし、戻り値は型推論を使う。 const add = (a: number, b:number) => a + b オプションパラメータとデフォルトパラメータ 引数名の後ろに?を付けると省略可能なオプションパラメータとなる。省略時はundefinedとなる。 引数名=値とするとデフォルトパラメータとなる。デフォルト引数は型推論を使う。 const print = (a:...
TypeScript

[TypeScript]enum(列挙型)の使い方

数値列挙の場合 const enum Color { Red, Blue, Green } console.log(Color.Green) // 2 文字列列挙の場合 const enum Color2 { Red = "#f00", Blue = "#00f", Green = "#0f0" } console.log(Color2.Green) // "#0f0" 「型名は大文字で始まる単数...
スポンサーリンク
TypeScript

[TypeScript]オブジェクトの型定義

オブジェクトリテラルによる型推論 TypeScriptでオブジェクトリテラルを使うと型推論が行われる。通常はこの記法を使うべきである。 const obj = { id: 1, } obj.id="1" // エラー アノテーションによる型定義 省略可能プロパティや読み取り専用プロパティを定義したい場合は、アノテーションを使って明示的に型を宣言する。 const obj2: { id: numbe...
サーバ

「REMOTE HOST IDENTIFICATION HAS CHANGED」の解決方法

概要 SSHでサーバ側のホストキーが変更されると、SSH接続を試みた際に以下のようなエラーとなり接続することができなくなる。 GitHubやBitbucketのホストキーが更新されることがあり、ある日突然リポジトリへpushなどができなくなるのはこれが原因である。 解決方法 SSHクライアント側の.ssh/known_hostsファイルにある古いホスト情報が残っているのが原因であるため、それを削除...
React

[Next.js] getStaticPaths関数とは

概要 .tsxのようなダイナミックルーティングを行うページでgetStaticProps関数を使用する場合は、getStaticPaths関数を使用して「生成されるパスのリスト」を定義する必要がある。 getStaticPaths関数はgetStaticProps関数の前にコールされ関数で、パスの組み合わせpathsとフォールバックfallbackをreturnする。 例 import { Nex...
React

[Next.js] getStaticProps関数とは

概要 Next.jsのページコンポーネントにて、「SSG(StaticSite Generator)させたい=ビルド時に実行したい」処理はgetStaticProps関数の中に記述する。 例 import {useEffect, useState} from 'react' import {GetStaticProps, NextPage} from 'next' type SsgProps = ...
React

[Next.js] レンダリング手法の決定方法

概要 Next.jsにはSSG、SSR、ISR、CSRの4種類のレンダリング手法がある。 SSGビルド時にgetStaticProps関数が呼ばれ、その中でAPIコールなどを行い必要なデータをpropsとして返す。ビルド結果は静的ファイルとして保存される。 SSRページへのアクセスがある度にgetServerSideProps関数が呼ばれ、関数内で生成されたpropsを元にページをサーバ側で描画し...
プログラミング書籍

「Webサイト高速化のための静的サイトジェネレーター活用入門」の感想・備忘録

Webサイト高速化のための 静的サイトジェネレーター活用入門posted with ヨメレバエビスコム マイナビ出版 2020年06月01日頃 楽天ブックス楽天koboAmazonKindle 点数 73点 感想 静的サイトジェネレーターであるGatsbyJSとヘッドレスCSMであるContentfulを使ってブログを作成するという内容で、説明が丁寧でとてもわかりやすかった。自分が今後Gatsby...
Java(書評)

「スッキリわかるJava入門 第3版」の感想・備忘録2

スッキリわかるJava入門第3版posted with ヨメレバ中山清喬/国本大悟 インプレス 2019年11月 楽天ブックスAmazonKindle 「スッキリわかるJava入門 第3版」の感想・備忘録1の続き 文字列 文字列の比較はequalsメソッドSystem.out.println("hello" == new String("hello") ? "yes" : "no"); // no...
スポンサーリンク