画面が読み込まれた時にスクロールの位置を一番下にしたいです。
useRefを使いスクロールの高さを取得してscrollTopにその値を入れようと思い refa.current.scrollTop = scroll;としたのですがconsoloe.logでみたところ代入したscrollの値に書き換わっていませんでした。
どうやって、スクロール位置を一番下にすることができるのしょうか??
const Test: FunctionComponent = () => { const refa = useRef<HTMLDivElement>(null); if (process.browser) { const test = () => { if (refa.current !== null) { const scroll = refa.current.scrollHeight; refa.current.scrollTop = scroll; // scrollの値が入っていない console.log(refa.current.scrollTop); } }; test(); } return ( <> <Header /> <Sidebar /> <div style={{ height: '500px', overflowY: 'auto', background: 'blue' }} ref={refa}> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> <p style={{ height: '50px', textAlign: 'center' }}>aaa</p> </div> </> ); };
回答1件
あなたの回答
tips
プレビュー