タグ

関連タグで絞り込む (428)

タグの絞り込みを解除

tipsに関するsukka9のブックマーク (2,188)

  • CSSのみで画面の幅と高さのウィンドウサイズを取得する方法|BLACKFLAG

    画面の幅や高さを取得するには基的にはJavaScriptを使用しますが、CSSのみでリアルタイムに画面の幅や高さのウィンドウサイズを取得する方法があったので備忘録として紹介します。 Get the screen width & height without JavaScript まず、元ネタは以下です。 Get the screen width & height without JavaScript CSSでウィンドウサイズの幅と高さを判別するには、CSSのカスタムプロパティ機能「@property」を使って「:root」の変数に入れる際に三角関数を使って取得します。 @property --_w { syntax: '<length>'; inherits: true; initial-value: 100vw; } @property --_h { syntax: '<length>

    CSSのみで画面の幅と高さのウィンドウサイズを取得する方法|BLACKFLAG
  • Jotai v2を使いこなすために実は必須級な“async sometimes”パターンの解説

    この記事は株式会社カオナビ Advent Calendar 2024の23日目の記事です。 Jotai は、Reactで使えるステート管理ライブラリとしては、現状筆者が最も好んでいるものです。その理由は単純で、ステート管理アーキテクチャとして優れていると思うからです。Recoilが現役のころは同じ理由でRecoilを好んでいました。 Jotai2023年1月にv2がリリースされました。非同期処理の扱いがv2はそれより前と異なっており、簡単に言うとJotaiのコアから非同期処理(Promise)に対する特別扱いが排除されました。これにより、コアのAPIReactから切り離すことができたとされています。JotaiReactから使われることが多いとはいえ、以下のスライドでもJotaiが「Reactに依存しないライブラリ」として評価されていることからも分かるように、このような特徴は技術の普及

    Jotai v2を使いこなすために実は必須級な“async sometimes”パターンの解説
  • Re: 履歴テーブルから最新の1件を取ってくる方法

    そーだいさんが執筆された記事で、履歴テーブルから最新の1件を取ってくる方法について解説している。PostgreSQLの例だと以下のようなユーザーの履歴データに対し: CREATE TABLE history ( id SERIAL PRIMARY KEY, user_id INTEGER NOT NULL, data TEXT, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); INSERT INTO history (user_id, data, created_at) VALUES (1, 'First entry of user1', '2024-01-01 10:00:00'), (1, 'Second entry of user1', '2024-01-02 09:30:00'), (2, 'First entr

    Re: 履歴テーブルから最新の1件を取ってくる方法
  • 長い処理には通知音コマンドを仕込んでおくと捗るぞ

    こんにちは! Magic Moment フロントエンドエンジニアの @morishin です。 この記事は、Magic Moment Advent Calendar 2024 4 日目の記事です。 はじめに 開発あるある 皆さん開発をしていて、コマンドの "待ち" が長いとき、こんな経験はありませんか。 「ビルドに時間がかかるなぁ」 (別の作業をする) 「もう終わったかな (ターミナルチラー」 「まだかー」 (以降無限ループ) 作業に集中できない! 逆に 「このインストール時間かかるなぁ」 「終わるまでちょっと休憩しようかな (スヤァ」 〜3 時間後〜 「...あっ、いつの間にか終わってた!」 処理の完了に気付かずついつい休憩しすぎた! ありませんか?ありますよね? まあ休憩しすぎたっていうのはないにしても、実はエラーで処理が中断していたのに気付かなかった、というのはあるあるな気がします。

    長い処理には通知音コマンドを仕込んでおくと捗るぞ
  • render hooks パターンの注意点と対策

    以下の記事で紹介されている「render hooks パターン」には注意点があるため、簡単な例と共に注意点についてまとめました。 要約 Custom Hook から Component を返却する render hooks パターンの場合、返却された Component がアンマウントされてしまうことによりバグが発生する恐れがあるので注意が必要です。 Custom Hook から Component を返さずに React element を返す実装にすれば、 アンマウントを回避できます。 Component を返却する render hooks パターンの実装例と問題点 問題の視覚的確認 以下の codesandbox の例の「Open Modal」ボタンを押下してみてください。 Modal コンポーネントが現れるのですが、一定間隔でチカチカしています。 実装例 実装は以下の通りです。

    render hooks パターンの注意点と対策
  • 【React】知らなかったReact Developer Tools、20分で手軽に8つReact コンポーネントのデバッグテクニックをマスターする - Qiita

    前書き React Developer ToolsはReactの公式開発者ツールであり、日常的なコンポーネント開発において、属性やファイルの位置特定、propsのトラブルシューティングなど様々なシーンで重要な役割を果たしています。熟練したReact Developer Toolsの使用は日常の開発をより効率的にすることができます。 この記事では、React Developer Toolsプラグインを体系的に理解することができます。文では以下のことを学ぶことができます: コンポーネントの一時停止や遅延読み込みシナリオのシミュレーション。 コンポーネントに対応する実際のDOMを早く特定する方法。 props内の特定の関数がどこで作成されているかを早く特定する方法。 コード変更なしで、propsを介したコンポーネント変更をオンラインで検知する方法。 コンポーネントがどのファイルで作成されたかを

    【React】知らなかったReact Developer Tools、20分で手軽に8つReact コンポーネントのデバッグテクニックをマスターする - Qiita
  • なんとなくから脱却する GitHub Actionsグッドプラクティス11選 | gihyo.jp

    記事のテーマはGitHub Actionsです。個人的に「もっと早く知りたかった!」と考えているグッドプラクティスを、厳選してお届けします。想定読者は次のとおりです。 普段GitHub Actionsを雰囲気で運用している人 GitHub Actionsをコピペや生成AIで乗り切っている人 他者が書いたコードの意味をより深く理解したい人 記事でGitHub Actionsの基は説明しません。グッドプラクティスを含めて基礎から学びたい人は、拙著『GitHub CI/CD実践ガイド』を読んでみてください。GitHub Actionsの基構文から運用のコツまで、網羅的に解説しています。さて書籍紹介はこれぐらいにして、さっそく題へ進みます。 GitHub Actionsの設計指針 GitHub ActionsはCI/CDや各種自動化で役立つ、汎用的なワークフローエンジンです。一般的に長期

    なんとなくから脱却する GitHub Actionsグッドプラクティス11選 | gihyo.jp
  • スロークエリログをどう使えばいいのかって疑問、全て解決

    これはなに ども、レバテック開発部のもりたです。 今回はMySQLでのスロークエリログについて調査してまとめました。 スロークエリログといえば古くからパフォーマンスチューニングの力強い味方といったふうに語られることも多いですが、最近はクラウドで使える便利なツールも生まれています。この記事ではスロークエリログの一般的な使い方を紹介するとともに、他のツールとの比較や、どんな場面でスロークエリログが役に立つのか、また役に立たない場合はどんなツールを利用することができるのかについてまとめました。 足りないところなどあればおおいにマサカリ投げていただけると幸いです。 記事の流れ 記事の流れ この記事はそこそこ長いので、初めに記事の流れを解説します。適宜読み飛ばしてください。 なぜスロークエリログなのか ここではそもそもスロークエリログをなぜ確認したいのかみたいなところを説明します スロークエリログの

    スロークエリログをどう使えばいいのかって疑問、全て解決
  • 多段 ssh するなら ProxyCommand じゃなくて ProxyJump を使おう

    概要 AWS とかで踏み台ホスト経由(ここでは AWS っぽく bastion と呼ぶ)で ssh する必要があるなら ~/.ssh/config は↓みたいにしとくのが良いんじゃないかな? Host bastion Hostname bastionのIPアドレス User bastionのユーザ名 # ↓は規定のファイルだったり ssh-agent 使ってれば不要 IdentityFile bastion接続用の秘密鍵ファイル名 # ↓の3つはWindowsでは使えないので諦めて ControlMaster auto ControlPath ~/.ssh/cp-%r@%h:%p ControlPersist 10m Host 好きな接続先名 Hostname 接続先のIPアドレス User 接続先のユーザ名 # ↓は規定のファイルだったり ssh-agent 使ってれば不要 Identi

    多段 ssh するなら ProxyCommand じゃなくて ProxyJump を使おう
  • macOS のファイルを断捨離して 60 GB 空ける

    日々生活するにつれゴミが溜まるのは日常も PC も大差ないのですが,特に macOS は不要なキャッシュファイルが溜まりやすいと感じます.ディスク容量が逼迫し続け 10 GB を切り,いよいよ Photoshop も開けなくなってきたので,不要なファイルを 60 GB 分削除しました.以下メモです. 便利コマンド # ルートから 5 個下の階層までに存在する,100 MB 以上のファイルを検索 sudo du -x -m -d 5 / | awk '$1 >= 100{print}' # 現在のディレクトリ以下に存在する,50 MB 以上のファイルを検索 du -x -m | awk '$1 >= 50{print}' # ディレクトリを削除する rm -rf

    macOS のファイルを断捨離して 60 GB 空ける
  • 中級 Vim 操作

    この記事は Vim 駅伝 の 06/05 の記事です。 前回の記事は thinca さんによる、 06/03 の「Meguro.vim #23 を開催しました」という記事でした。 次回は 06/07 に投稿される予定です。 はじめに 記事は以下の記事のオマージュです。 Vim の基操作のうち、比較的マイナーながら汎用的に使える機能や小技を集めました。プラグインや複雑な設定が必要なものは含まれておらず、いずれも VimNeovim の両方で使うことができます。気になったものがあれば使ってみてください。 ノーマルモード編 検索結果を次々と置き換える Vim で文字列置換を行う最も有名な方法は :substitute コマンド (短縮形: :s) ですが、ノーマルモードの cgn というイディオムも便利です。これは c オペレータと gn テキストオブジェクト (:h gn) を組み合

    中級 Vim 操作
  • 少しの記述でユーザビリティやアクセシビリティを向上させるHTML/CSSテクニック集 – TAKLOG

    少しの記述・工夫でユーザビリティやアクセシビリティを向上させるHTML/CSSテクニックを独断と偏見で集めてみました。最近クローズドな場所で登壇を行ったのですが、そちらで話した内容を纏めたものにいくつか内容を追加したものとなります。 原則的にこのブログで取り入れられている手法だったり過去の記事で触れた手法を紹介したものです。 button要素には touch-action:manipulation を指定するiOS限定の話ではありますが、button要素をつい連続でタップすると画面が拡大表示されてしまい非常に煩わしいです。 ポストを別枠で表示するそのため、パンおよびズームのジェスチャーは有効にしつつダブルタップ時のズームなどの標準外の追加的なジェスチャーを無効にするtouch-action:manipulationを指定して誤作動を防止しておくと良いでしょう。

    少しの記述でユーザビリティやアクセシビリティを向上させるHTML/CSSテクニック集 – TAKLOG
  • 文章の折り返し指定のCSS最新版 - ICS MEDIA

    文章の折り返しはウェブ制作において意外と難しいものです。URLが文章に含まれている場合、URLがレイアウトを突き抜けてしまった、という経験をみなさんはお持ちではないでしょうか? この記事では、国内のウェブ制作において「開発者が考えることが少なくてよくなる」安全なCSS指定を紹介します。 結論から説明すると、以下の指定を提案します。 body { overflow-wrap: anywhere; /* 収まらない場合に折り返す */ word-break: normal; /* 単語の分割はデフォルトに依存 */ line-break: strict; /* 禁則処理を厳格に適用 */ } この記事では上記の指定にいたった理由と、折り返しの理解について必要なoverflow-wrapとword-breakプロパティを中心に解説します。 overflow-wrap overflow-wrapは

    文章の折り返し指定のCSS最新版 - ICS MEDIA
  • JavaScript である値がオブジェクト型であることを判定する変なテク

    TC39の活動で有名なJordan Harbandが作成した下記issueで知ったのでメモ。 前提として、次のコードによって x がオブジェクト型であることを判断できる。JavaScriptにおける null は typeof の結果が "object" になるという有名な変な挙動がカバーされている。 function isObjectA(x) { return (typeof x === "object" && x !== null) || typeof x === "function"; }

    JavaScript である値がオブジェクト型であることを判定する変なテク
  • あなたが教わってるそのCSSテクニックはもう古い – TAKLOG

    Xの初学者のポストにて古の手法を教わっている方をよく見かけるので、2024年現在そのCSSテクニックはもう古いってものをいくつか列挙しました。 ブロックのセンタリングに margin を使うなら margin-inline:auto を使いなさいmarginを使ってブロックのセンタリングを行う際によく教わるのはmargin:0 autoあるいはmargin:autoでしょう。

    あなたが教わってるそのCSSテクニックはもう古い – TAKLOG
  • Next.jsプロジェクトに追加したい設定11個 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Next.jsプロジェクトに追加したい設定11個 - Qiita
  • HTMLのLazy Loadの挙動がブラウザによってかなり異なるので違いを実測して確かめてみた

    計測方法と結果 以下のようになlazy loadが発火した時点でのソースと画面中央の距離(px)を測るページを用いて、iframeと画像の二種類のソースを対象に4000pxのdiv要素とボタン以外に何も読み込まれていない状態とすでに画像が読み込まれている状態との二つの状態を掛け合わせて計測しました。 import React, { useState, useRef } from 'react'; export default function Home() { const iframeDistance = 4000; const [showImage, setShowImage] = useState(false); const imageRef = useRef(null); const toggleImage = () => { setShowImage(!showImage); };

    HTMLのLazy Loadの挙動がブラウザによってかなり異なるので違いを実測して確かめてみた
  • ブラウザでリロードしながらキャッシュの挙動を確認してる全ての開発者へ | blog.jxck.io

    Intro こういうタイトルを付けるのはあまり好きではないが、あえてこのようにした。 「ブラウザでキャッシュがヒットしない」 以下は、Web における Caching の FAQ だ。 サーバで Cache-Control を付与したのにキャッシュがヒットしない サーバで ETag を付与したのに If-None-Match が送られない サーバで Last-Modified を付与したのに If-Modified-Since が送られない 先日も、筆者が書いた MDN の Cache セクションで「記述が間違っているのでは?」と同様の質問を受けた。 Issue about the Age response header and the term "Reload" · Issue #29294 · mdn/content https://github.com/mdn/content/iss

    ブラウザでリロードしながらキャッシュの挙動を確認してる全ての開発者へ | blog.jxck.io
  • 実践Drawio | フューチャー技術ブログ

    はじめにもともとはMicrosof Visioなどを使って作成していた図形(ネットワーク図、各種シーケンス、ERD..etc)ですが、ファイルストレージがクラウド(Google Drive)に移ることで、 そのまま編集したい 欲求が世の中で増しているように思います。 その場合の有効なツールとしてdraw.ioを利用するケースが増えてきたと感じます。そこで当社で蓄積したナレッジを文章化します。 Draw.io Tips1.ショートカット1.1. 公式ショートカットまずはここから始めましょう。 ショートカットはプロダクトの基操作が詰まっています。 https://about.draw.io/wp-content/uploads/2016/11/draw.io_shortcuts_basic_win_EN.pdf 2. 設定2.1. 日語化 画面右上の🌏マークから選択します メニューが開く

    実践Drawio | フューチャー技術ブログ
  • Event Types in React and TypeScript

    Matt PocockMatt is a well-regarded TypeScript expert known for his ability to demystify complex TypeScript concepts. #The Problem When you're working with React and TypeScript, you'll often encounter this kind of error: const onChange = (e) => {}; Parameter 'e' implicitly has an 'any' type. <input onChange={onChange} />; It's not always clear what type you should give to the e inside your onChange

    Event Types in React and TypeScript