React Hooks_part2.3_useInput part Two
useInput2
useinputをもう少し拡大して、もっとセクシーにします.
これをNPMに登録し、人々が利用できるようにします.
initialVlaueではなく、有効性を検証する機能が含まれています.
ここで
validatorの追加
validator関数は特定の文字を書けないようにしてみます
onchageに価値を設定するimport "./styles.css";
import React, { useState } from "react";
const useInput = (initialValue, validator) => {
const onChange = (event) => {
const {
target: { value }
} = event;
let willUpdate = true;
if (typeof validator === "function") {
willUpdate = validator(value);
//유효성 검사를 실행한다
}
if (willUpdate) {
setValue(value);
}
};
const [value, setValue] = useState(initialValue);
return { value, onChange };
};
export default function App() {
const maxLen = (value) => value.length < 10;
const name = useInput("Mr.", maxLen);
//매번 validator은 바뀔거고 타입이 function 이라면 wilUpate에 validator의 결과를 업로드 할 것이다.
//이 케이스에서 validator은 maxLen 이고 결과는 true 혹은 false가 될 것이다. true면 업데이트 가능하다
return (
<div className="App">
<h1>Hello</h1>
<input placeholder="Name" {...name} />
</div>
);
}
ワード長が10を超えるかどうかを検証するベリファイアが確立されました
条件は自由に入れます.
では@は入力されません.
Reference
この問題について(React Hooks_part2.3_useInput part Two), 我々は、より多くの情報をここで見つけました
https://velog.io/@angel_eugnen/React-Hookspart2.2useInput-part-Two
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
import "./styles.css";
import React, { useState } from "react";
const useInput = (initialValue, validator) => {
const onChange = (event) => {
const {
target: { value }
} = event;
let willUpdate = true;
if (typeof validator === "function") {
willUpdate = validator(value);
//유효성 검사를 실행한다
}
if (willUpdate) {
setValue(value);
}
};
const [value, setValue] = useState(initialValue);
return { value, onChange };
};
export default function App() {
const maxLen = (value) => value.length < 10;
const name = useInput("Mr.", maxLen);
//매번 validator은 바뀔거고 타입이 function 이라면 wilUpate에 validator의 결과를 업로드 할 것이다.
//이 케이스에서 validator은 maxLen 이고 결과는 true 혹은 false가 될 것이다. true면 업데이트 가능하다
return (
<div className="App">
<h1>Hello</h1>
<input placeholder="Name" {...name} />
</div>
);
}
Reference
この問題について(React Hooks_part2.3_useInput part Two), 我々は、より多くの情報をここで見つけました https://velog.io/@angel_eugnen/React-Hookspart2.2useInput-part-Twoテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol