Styled ComponentsにおけるPropsの使用(React)
前回のレッスンで、Styled Componentsライブラリを使用してスタイルを適用したコンポーネントは、通常のReactコンポーネントとして使用できることを学びました。このレッスンでは、propsについても同様に機能することを確認します。
ReactコンポーネントBlockがあり、その中でStyled Componentsを使用してスタイルを適用したコンポーネントInputとContainerを作成したと仮定します。
const Container = styled.div`
display: flex;
flex-direction: column;
width: 150px;
`;
const Input = styled.input`
margin: 5px;
font-size: 18px;
`;
Containerの中に3つのInputコンポーネントを配置します。
function Block() {
return (
<Container>
<Input />
<Input />
<Input />
</Container>
);
}
propsを使用すると、コンポーネントにさまざまな属性を設定できます。2番目のinputにplaceholder属性(値name)とtype属性(値text)を設定し、3番目のinputのtype属性には値passwordを設定してみましょう。
function Block() {
return (
<Container>
<Input />
<Input placeholder="name" type="text" />
<Input type="password" />
</Container>
);
}
空のReactコンポーネントBlockを作成し、その中に3つのボタンを持つdivを作ります。Styled Componentsライブラリを使用して、このdivとボタンにスタイルを適用してください。propsを使用して、最初のボタンを無効化し、3番目のボタンのタイプをresetに設定してください。