Create Slider

Component suggested in #1
This commit is contained in:
Angelos Chalaris
2019-03-02 10:20:55 +02:00
parent 2600ea3e78
commit 8dfdcfd7d7
3 changed files with 72 additions and 0 deletions

View File

@ -63,6 +63,7 @@ import ReactDOM from 'react-dom';
* [MultiselectCheckbox](#multiselectcheckbox)
* [PasswordRevealer](#passwordrevealer)
* [Select](#select)
* [Slider](#slider)
* [TextArea](#textarea)
</details>
@ -523,6 +524,36 @@ ReactDOM.render(
<br>[⬆ Back to top](#table-of-contents)
### Slider
Renders a slider element that uses a callback function to pass its value to the parent component.
Use object destructuring to set defaults for certain attributes of the `<input>` element.
Render an `<input>` element of type `"range"` and the appropriate attributes, use the `callback` function in the `onChange` event to pass the value of the input to the parent.
```jsx
function Slider({ callback, disabled = false, readOnly = false }) {
return (
<input
type="range"
disabled={disabled}
readOnly={readOnly}
onChange={({ target: { value } }) => callback(value)}
/>
);
}
```
<details>
<summary>Examples</summary>
```jsx
ReactDOM.render(<Slider callback={val => console.log(val)} />, document.getElementById('root'));
```
</details>
<br>[⬆ Back to top](#table-of-contents)
### TextArea
Renders a `<textarea>` element that uses a callback function to pass its value to the parent component.

View File

@ -233,6 +233,20 @@
],
"notes": []
},
{
"name": "Slider.md",
"title": "Slider",
"text": "Renders a slider element that uses a callback function to pass its value to the parent component.\n\nUse object destructuring to set defaults for certain attributes of the `<input>` element.\nRender an `<input>` element of type `\"range\"` and the appropriate attributes, use the `callback` function in the `onChange` event to pass the value of the input to the parent.\n\n",
"codeBlocks": [
"```jsx\nfunction Slider({ callback, disabled = false, readOnly = false }) {\n return (\n <input\n type=\"range\"\n disabled={disabled}\n readOnly={readOnly}\n onChange={({ target: { value } }) => callback(value)}\n />\n );\n}\n```",
"```jsx\nReactDOM.render(<Slider callback={val => console.log(val)} />, document.getElementById('root'));\n```"
],
"expertise": 0,
"tags": [
"input"
],
"notes": []
},
{
"name": "StarRating.md",
"title": "StarRating",

27
snippets/Slider.md Normal file
View File

@ -0,0 +1,27 @@
### Slider
Renders a slider element that uses a callback function to pass its value to the parent component.
Use object destructuring to set defaults for certain attributes of the `<input>` element.
Render an `<input>` element of type `"range"` and the appropriate attributes, use the `callback` function in the `onChange` event to pass the value of the input to the parent.
```jsx
function Slider({ callback, disabled = false, readOnly = false }) {
return (
<input
type="range"
disabled={disabled}
readOnly={readOnly}
onChange={({ target: { value } }) => callback(value)}
/>
);
}
```
```jsx
ReactDOM.render(<Slider callback={val => console.log(val)} />, document.getElementById('root'));
```
<!-- tags: input -->
<!-- expertise: 0 -->