質問するログイン新規登録

回答編集履歴

1

useCallbackを使ってみました

2023/07/03 09:12

投稿

FKM
FKM

スコア3666

answer CHANGED
@@ -18,4 +18,29 @@
18
18
  )
19
19
  ```
20
20
 
21
- あとは変換部分を適宜useCallbackフックなどを使っておけばいいのかなと思います。
21
+ あとは変換部分を適宜useCallbackフックなどを使っておけばいいのかなと思います。
22
+
23
+ ```ts
24
+ import {useState,useCallback} from 'react'
25
+ //文字のバインド
26
+ export const App = ()=>{
27
+ const [word,setWord] = useState('')
28
+ const replace_word = useCallback((wd)=>{
29
+ return wd.replace(/[\u3041-\u3096]/g, (match)=>{
30
+ let chr = match.charCodeAt(0) + 0x60;
31
+ return String.fromCharCode(chr);
32
+ })
33
+ },[])
34
+ const bindWord = (e)=>{
35
+ let word = e.target.value
36
+ word = replace_word(word)
37
+ setWord(word); //入力文字の同期
38
+ }
39
+ return(
40
+ <>
41
+ <input type="text" onChange={bindWord} value={word}/>
42
+ </>
43
+ )
44
+ }
45
+ export default App;
46
+ ```