A TypeScript-compatible timeline visualization library for D3 v7, upgraded from the original D3 v3 implementation.
The library is already set up in this project with D3 v7.9.0. No additional installation required.
| import React from 'react' | |
| import debounce from 'lodash/debounce' // Or throttle | |
| export const HelloWorld: React.FC = () => { | |
| // Example for a state can change quickly in a bit of time | |
| const [innerParams, setInnerParams] = React.useState<string>('') | |
| // Use ref to create a freeze debounce function to make sure it's not rerender | |
| // Need to pass the changing parameters here | |
| const fetch = React.useRef(debounce((params: any) => { |
| /* | |
| Before Septemper 15 2018, Vietnam has phone number start with 09*, 01(2|6|8|9). | |
| After that, the phone number can start with 03, 05, 07 or 08. | |
| So this function provide a way to validate the input number is a Vietnamese phone number | |
| */ | |
| function isVietnamesePhoneNumber(number) { | |
| return /(03|05|07|08|09|01[2|6|8|9])+([0-9]{8})\b/.test(number); | |
| } |