material-ui overlay div抽象组件

问题描述 投票:3回答:1

我在React应用程序中使用material-ui。我正在使用侧面菜单“Drawer”组件,但无法弄清楚如何在打开菜单后面包含半透明背景覆盖。

http://www.material-ui.com/#/components/drawer

reactjs material-ui
1个回答
3
投票

停靠的示例显示没有背景的抽屉。

未对接的示例为抽屉提供了一个半透明的背景,当点击时隐藏抽屉。

区别在于docked财产。如果为true,则抽屉将停靠,并且没有背景。如果为false,则背景将出现。

import React from 'react';
import Drawer from 'material-ui/Drawer';
import MenuItem from 'material-ui/MenuItem';
import RaisedButton from 'material-ui/RaisedButton';

export default class DrawerUndockedExample extends React.Component {

  constructor(props) {
    super(props);
    this.state = {open: false};
  }

  handleToggle = () => this.setState({open: !this.state.open});

  handleClose = () => this.setState({open: false});

  render() {
    return (
      <div>
        <RaisedButton
          label="Open Drawer"
          onClick={this.handleToggle}
        />
        <Drawer
          docked={false}
          width={200}
          open={this.state.open}
          onRequestChange={(open) => this.setState({open})}
        >
          <MenuItem onClick={this.handleClose}>Menu Item</MenuItem>
          <MenuItem onClick={this.handleClose}>Menu Item 2</MenuItem>
        </Drawer>
      </div>
    );
  }
}

查看Drawer demos and API docs了解更多信息。

注意:对于未来的读者,这涉及material-ui v0.x.版本1.0.0-beta24的Drawer的最新版本已经大大改进,并且更符合已发布的Material Design standards

© www.soinside.com 2019 - 2024. All rights reserved.