コンパイラかく語りき

import { Fun } from 'programming'

VSCode で Prettier の設定が無視されて効かない問題

tl;dr ./.prettierrc.json を作成する。 Prettier の設定が無視される VSCode の formatOnSave 機能で Prettier の設定が効きませんでした。 Prettier 設定を workspace で行ったり、.prettierrc に書いたりしましたが、どちらも VSCode から無視される状態…

【JavaScript, VSCode, Prettier】import 文を自動改行

td;dr VSCode で Prettier の設定を行い、 import 文を自動改行する。 概要 ESLint/TSLint によって1行のコードの長さを制限することができます。 ESLint: max-len TSLin: max-line-length import 文もこの対象になりますが、auto fix が効かないので手動で…

VSCode で行番号カラムの幅を狭める

VSCode の行番号カラムの幅が広いと感じるのは自分だけでしょうか? 特にエディタ画面をスプリットすると、なおさらカラムの幅が気になります。 実はこのカラム、3つの要素から成り立っています。 左から順に、グリフマージン、行番号、折りたたみアイコン…

【JavaScript】Vue.js で retweet / link リンク【Twitter】

概要 ツイートを埋め込むような web サービスを作る場合、リツイートとイイネのリンクを実装することがあるかもしれません。 そのリンク(正式名称はインテント)を Vue.js で作成する方法です。 実装 リンクの定義です。 // ツイート ID (いわゆる id_str…

【Node.js】Mongoose の upsert で、 ドキュメント作成時のみ追加するフィールド

Mongoose の upsert 便利ですよね。正しくは、upsert: true オプションですね。ドキュメントが存在しなければ作成、存在すれば更新をしてくれます。 参考: How do I update/upsert a document in Mongoose? - stackoverflow.com さてそんな upsert を行う時…

【MacOS】Hyperterm でログをクリアする

超小ネタ。 HyperTerm でログをクリアする方法について。 hyper.is コマンドなら $ clear、ショートカットなら ⌘+K でログがクリアされます。 以上ですw

【JavaScript】Google Optimize を React アプリケーションで使う

Google Optimize を React アプリケーションで使う 概要 AB テストツールである Google Optimize を React.js で作るアプリケーションで使う。 React アプリケーション作成 簡単に React アプリケーション を作成できる create-react-app を使う。 $ npx cre…

【JavaScript】forEach と for文 における配列イテレーション差異

forEach と for文 における配列イテレーション差異 解説 JavaScript において、 forEach と for 文の違いはいくつかあると思うのですが、今回は配列イテレーションの差異について書きます。 new Array(n) のような形で配列を作成すると、empty item が初期値…

自分用 CSS Grid チートシート

CSS

CSS グリッドレイアウトに関するチートシートです。自分用なので結構雑です。 developer.mozilla.org 用語 Grid container Grid item Grid column Grid row Grid track Grid area Grid cell プロパティ コンテナ系 display grid-template-columns, grid-temp…

React v16.6.0で追加された lazy, memo そして contextType を試してみる

React.js v16.6.0 にて追加された新機能を試してみました。 reactjs.org 環境づくり React.memo React.Suspense と React.lazy static contextType static getDerivedStateFromError() 環境づくり サクッと、create-react-app を利用しました。 create-react…