2021-01-01から1年間の記事一覧

stripe webhook express.raw() rawBody

第一引数はバッファを欲しがってる stripe.webhooks.constructEvent(req.body, sig, endpointSecret) バッファの見た目 <Buffer 7b 0a 20 20 22 69 64 22 3a 20 22 65 76 74 5f 31 4a 39 35 41 55 44 52 30 4f 7a 53 72 32 74 4a 53 39 6d 34 77 70 37 77 22 2c 0a 20 20 22 6f 62 6a 65 63 ... 3342 more bytes> イベントを発行するとイベントオブジェクトがPOSTされる stri…</buffer>

Typescript UtilityTypes まとめる

React に続き TypeScript も今週から始めてみたけど、おもろい!型がおもろい!カタが! UtilityTypes について、少しずつ分析してみる。 Exclued U に割り当て可能な T のキーを全て exclued (除外)した T を構築 type Exclude<T, U> = T extends U ? never : T T</t,>…

React おもろい

React を今月から始めてみたけど、おもろい! サスペンスを使ったデータ取得までしか見てないけど、とりあえず体感したかったし、公式を参考に適当に実装(^^♪。 //エラー境界 class ErrorBoundary extends React.Component {...} //リソース const userResour…

sass アンパサンド & 後ろ ネスト 親参照

sass の親を指定する & について、セレクタの後ろについているのを見かけた 親セレクタ { 子セレクタ & {...} } このようにコンパイルされるが 子セレクタ 親セレクタ {...} css 3では親を参照できないので、当然親のスタイルは変わりませんでした でもこう…

IntersectionObserver スクロール position: absolute ⇔ position fixed

下へスクロールしたら上へ戻るためのスクロールトップボタンを表示させたい 下へスクロールすると上部へ消えていく任意の要素を監視対象とした スクロールトップボタンはデフォルトの設定で不可視、および位置として position: absolute を設定して調整(bott…

PHP null 合体演算子 便利過ぎる

試したらできた 関数($a ?? $b = [//]); 左辺が null なら右辺を引数に渡すが その時に変数を動的に初期化できる つまり、名前を付けることができる これもできた $arr1; foreach ($arr1 ?? $arr2 ?? $arr3 = [1, 2, 3] as $item) { echo $item; //123 } な…

PHP セッション 閲覧履歴

適当に実装してみた 記事をクリックする URLのパスパラメータを記事のidとしてセッションに配列で保存 こんなURL http://localhost/article/15 FQDN + パスパラメータを取得 $url = (empty($_SERVER['HTTPS']) ? 'http://' : 'https://') . $_SERVER['HTTP_H…

IntersectionObserver 複数 バグ? スクロール

1つのオブザーバで複数のアイテムを監視する場合、(頭も)バグる 結論 2つのオブザーバで同じコンテナ内の異なるアイテムをそれぞれ1つずつ監視することで解決した observer1.observe(document.querySelector(".container").firstElementChild) observer2.obs…

無限スクロール infinite scroll 「intersection observer」

適当に実装してみた option で渡す root は null の場合と任意の場合があるので場合分け いずれもその viewport 内の最後の要素を監視 上にスクロールして戻る時は監視不要 よってその都度監視を停止して新しい監視を開始 class InfiniteScroller { Id = 0; …

【composer dump-autoload 効かない】Fatal error: Uncaught Error: Class 'XXX' not found

composer dump-autoload が効かない composer dump-autoload --optimize が効かない 結論 プロジェクトのディレクトリ構造を全身全霊の力を持って強く意識して、それから composer.json を正しく記述する composer.json 変更前 "autoload": { "psr-4": { "Ap…

git revert コンフリクト CONFLICT (modify/delete)

状態を確認 git status git status -b git status -sb コマンドが実行可能か dry run してみる git add -n . git push -n origin main 本題 CONFLICT (modify/delete) ファイル作成と同じファイルを更新のコミットがそれぞれ存在し ファイル作成のコミットを…