npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@alicloud/console-components-slide-panel

v3.0.6

Published

React component for Alibaba Cloud.

Downloads

163

Readme

@alicloud/console-components-slide-panel

滑动面板,从浏览器右侧弹出面板。

基本用法

SlidePanel 适用于只展示一个 panel的情况(其实这应该符合大部分情况),点击 open 按钮时弹出面板:

$XView

弹出多个面板,用户可以在面板之间切换。这种场景需要使用 SlidePanelGroup 和 SlidePanelItem:

$XView

另一种多面板的方式:在一个 SlidePanel 中弹出另一个 SlidePanel $XView

从底部滑出的面板: $XView

通过控制 popupProps,可以让 SlidePanel 从内容区域的底部滑出: $XView

基于栈的多面板管理:每次只展示一个面板,但是可以进行下探、返回。使用usePanelStack来帮助你快速实现栈式面板管理: $XView

渲染到指定容器,通过props.container来指定 SlidePanel 要被渲染的容器 $XView

APIs

SlidePanel

SlidePanel 是基于 SlidePanelGroup 和 SlidePanelItem 的简单封装,将自己 props 透传给它们:

<SlidePanelGroup {...slidePanelGroupProps}>
  <SlidePanelItem {...slidePanelItemProps} />
</SlidePanelGroup>

<SlidePanel> 同时接受SlidePanelGroupSlidePanelItem的 props。<SlidePanel> 内部自动将自己的 props 分类成slidePanelGroupPropsslidePanelItemProps,像上面的代码片段展示的那样,透传给对应组件。

$XView

对于只展示一个 panel的情况(其实这应该符合大部分情况),直接使用 SlidePanel 就很方便。使用方式见上面的基本用法

如果要同时展示多个 panel,请直接使用 SlidePanelGroup 和 SlidePanelItem。

SlidePanelGroup

SlidePanelGroup 定义一个滑动面板,其中可以包含多个 SlidePanelItem。

$XView

SlidePanelItem

定义一个滑动面板。

$XView

usePanelStack

使用一个栈来管理多个面板:

  1. 最初只有一个面板
  2. 当加入新的面板时,展示新的面板(下探)
  3. 当新面板返回时,展示最初的那个面板

参数

initer?: () => React.ReactElement

初始化最初展示的面板。

返回值

$XView

你需要将top渲染到SlidePanelGroup中。使用示例见前面的“基本用法”小节。

usePanelStackCtx

为了方便用户【在面板中】操作面板栈,我们提供了usePanelStackCtx()这个 hooks 来获得栈的操作方法:pushpop,这两个操作方法就是 usePanelStack 返回值中的pushpop

const FirstPanel: React.FC<{
  setIsPanelShowing: (v: boolean) => void
}> = ({ setIsPanelShowing }) => {
  const panelStackManager = usePanelStackCtx()
  return (
    <SlidePanelItem
      id="item1"
      width="medium"
      title="title1"
      headerExtra="extra1"
      onOk={() => setIsPanelShowing(false)}
      onCancel={() => setIsPanelShowing(false)}
    >
      item1
      <Button
        onClick={() => {
          panelStackManager.push(<SecondPanel />)
        }}
      >
        下探一级
      </Button>
    </SlidePanelItem>
  )
}

使用示例见前面的“基本用法”小节。