# anchor-scroll-menu
**Repository Path**: Jay_Ohhh/anchor-scroll-menu
## Basic Information
- **Project Name**: anchor-scroll-menu
- **Description**: Anchor menu with scrolling contents for React
- **Primary Language**: TypeScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2021-12-27
- **Last Updated**: 2022-06-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: anchor, menu, scroll, React, nav
## README
anchor-scroll-menu 👋
Anchor menu with scrolling contents for React
#### 🏠 [Homepage](https://github.com/Jay-Ohhh/anchor-scroll-menu)
#### ✨ [Demo & Document](https://jay-ohhh.github.io/anchor-scroll-menu)
## Install
```sh
$ npm install anchor-scroll-menu
```
## Snapshot

## Usage
```tsx
import React from 'react';
import { AnchorMenu } from 'anchor-scroll-menu';
const commonStyle = { height: 300 };
const id = +new Date();
const menuList = [
{
name: 'antiquewhite',
key: `antiquewhite${id}`,
content: ,
},
{
name: 'skyblue',
key: `skyblue${id}`,
content: ,
},
{
name: 'pink',
key: `pink${id}`,
content: ,
},
{
name: 'orange',
key: `orange${id}`,
content: ,
},
{
name: 'lightcoral',
key: `lightcoral${id}`,
content: ,
},
];
export default () => (
);
```
## API
| Name | Description | Type | Default |
| --- | --- | --- | --- |
| menuList | 菜单数据数组,key 请确保是唯一的,由字母数字组成,且必须以字母开头 | `{ name: string; content: ReactNode; key: string; }[]` | `[]` |
| menuStyle | menu 区域的 style | `CSSProperties` | `--` |
| placement | menu 区域的位置 | "top" \| "right" \| "bottom" \| "left" | `left` |
| scrollDirection | 滚动方向 | "vertical" \| "horizontal" | `vertical` |
| region | 手动滚动时,滚动内容跟父元素顶部距离的区间, 滚动内容一到达该区间, 对应菜单按钮高亮。如果滚动过快时,菜单没有高亮,不妨将区间增大。 | `[number, number]` | `[-20, 20]` |
| easing | 缓动动画函数 | "linear" \| "easeInQuad" \| "easeOutQuad" \| "easeInOutQuad" \| "easeInCubic" \| "easeOutCubic" \| "easeInOutCubic" | `easeInOutCubic` |
| duration | 用多少 ms 完成滚动动画,单位 ms | `number` | `300` |
| hideTitle | 隐藏内容块的 title | `boolean` | `false` |
| activeKey | 当前激活的 menu 的 key | `string` | `--` |
| onMenuClick | 点击菜单的回调函数 | `(key: string, index: number, activeKey: string) => void` | `--` |
| onReach | 点击菜单滚动到达目的地后的回调函数 | `(key: string, index: number) => void` | `--` |
## 👔 Author
**Jay-Ohhh**
- Website: https://github.com/Jay-Ohhh
- Github: [@Jay-Ohhh](https://github.com/Jay-Ohhh)
## 🤝 Contributing
Contributions, issues and feature requests are welcome!
Feel free to check [issues page](https://github.com/Jay-Ohhh/anchor-scroll-menu/issues). You can also take a look at the [contributing guide](https://github.com/Jay-Ohhh/anchor-scroll-menu/blob/master/CONTRIBUTING.md).
## Show your support
Give a ⭐️ if this project helped you!
## 📝 License
Copyright © 2022 [Jay-Ohhh](https://github.com/Jay-Ohhh).
This project is [MIT](https://github.com/Jay-Ohhh/anchor-scroll-menu/blob/master/LICENSE) licensed.
---
_This README was generated with ❤️ by [readme-md-generator](https://github.com/kefranabg/readme-md-generator)_