creareRefを使ってrefを要素分つくるのが良いみたいです。 import { createRef, useRef } from 'react'; const list = ['', '', '']; export default function Indexpage() { const listRefs = useRef([]); list.forEach((_, i) => { listRefs.current[i] = …
developer.mozilla.orgAndroid Chromeではアンダーラインが表示されるのに、iOSのSafariでは表示されないという事態に直面しまして、いろいろ調べてみると、text-decorationを一括指定すると、Safariで表示されなくなることに気づきました。iOSでもMacOSでも…
以前作ったカスタムフックが複雑すぎたのでシンプル版を作りました。blog.kimizuka.org useScroll.tsx import { useEffect, useState } from 'react'; export default function useScroll() { const [ scrollTop, setScrollTop ] = useState(0); const [ scr…
ものすごく久しぶりにExpress + Socket.ioでウェブサイトを作ったので、手順をメモしておきます。 ※ Node.js v14.15.0、yarn 1.22.5 で作成 必要なパッケージをインストール yarn add express socket.io app.jsを作成 const express = require('express'); c…
こんな需要があるかはわかりませんが、前々回と前回の記事を併せれば実現できます。blog.kimizuka.org blog.kimizuka.orgつまり、透明なオブジェクトに対してcastShadowを有効にしてあげれば影だけが投影されるのです。 透明なのに影が映るのはおかしい気も…
Three.jsでライト(AmbientLight以外)を使うと、凹凸のあるオブジェクトには影が表示されます。 が。他のオブジェクトに対しては影が落ちません。他のオブジェクトに影を落とすためには、いろいろ設定が必要だったのでまとめておきます。 WebGLRenderer.sha…
マテリアルの変更は以前調べた し、なんならその時も半透明にしたから大丈夫でしょう。blog.kimizuka.orgと思って、取り組んだのですが、ハマったのでメモを残しておきます。まず、glbファイルを読み込みます。前回の記事を参考にmaterialを透明にします。 …
DEMO 解説 clip-pathにSVGのID(正確にはSVG内の図形のID)を渡してあげればその図形をマスクにすることができます。developer.mozilla.orgまた、SVGもタグなのでCSSアニメーションで動かすことができます。 そうすると、合わせ技でマスクをアニメーションさ…
❶ position: fixedの要素を用意する ❷ ❶で用意した要素に背景色を設定する ❸ ❶で用意した要素の子要素を用意する ❹ ❸で用意した要素をY軸で180度回転させる(裏返す)という処理、つまりコードで書くと、 HTML <div> <p></p> </div> CSS div { position: fixed; background-col…
Next 11を使ってウェブサイトを構築し、 yarn buildで書き出そうと思ったのですが、 Error: Do not use . Use Image from 'next/image' instead. See https://nextjs.org/docs/messages/no-img-element. @next/next/no-img-element とエラーが出ました。指示…
Next.js + styled-componentsでウェブサイトを作り始めてから、ずーっと気になっていました。 ページ表示時に一瞬スタイルが当たってない状態が表示のが。が。ついに、その解決方法を見つけました。この、サーバサイドレンダリングを使えば解決します。style…
_headerで設定できます。blog.kimizuka.org 設定方法 ❶ Pro以上のプランにアップグレードするwww.netlify.com❷ _headersを作成する /* Basic-Auth: user:password※ ユーザー名: user パスワード: password の例❸ ルートディレクトリに_headerを置く以上です。…
こんな感じで、顔の周りを切り抜くスクリプトを書きました。github.com (function() { window.trimAndResize = trimAndResize; function trimAndResize(canvas, size) { return faceapi.nets.tinyFaceDetector.load('https://justadudewhohacks.github.io/fa…
先日、Contentful + Nuxt.jsでつくったサイトのAPIキーの隠蔽を試みましたが、今回はそのサイトをAmplifyを使って公開する際の.envの作成方法をまとめておきます。公式サイトに書いてある通りの方法です。docs.aws.amazon.com ❶ 環境変数を設定 Amplifyコン…
※ Contentful と Nuxt.js の説明は省きます。www.contentful.com ja.nuxtjs.orgContentfulとNuxt.jsをつかってウェブサイトを使う場合、こちらの公式のドキュメントを参考にしていました。www.contentful.comが。Nuxt.jsの2.13からdotenvの扱いがより便利に…