Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在react路由器上使用react汉堡菜单?_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 如何在react路由器上使用react汉堡菜单?

Javascript 如何在react路由器上使用react汉堡菜单?,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我正试图按照本指南()使用react路由器实现react汉堡菜单 特别是这一部分 我遇到的问题是,菜单按钮似乎放在菜单的左侧,而菜单似乎没有隐藏。这是一个截图,它看起来像什么 我的代码如下所示: app.js // This component handles the App template used on every page. import React, {PropTypes} from 'react'; import SideBar from './common/Header'; c

我正试图按照本指南()使用
react路由器实现
react汉堡菜单

特别是这一部分

我遇到的问题是,菜单按钮似乎放在菜单的左侧,而菜单似乎没有隐藏。这是一个截图,它看起来像什么

我的代码如下所示:

app.js

// This component handles the App template used on every page.
import React, {PropTypes} from 'react';
import SideBar from './common/Header';

class App extends React.Component {
    render() {
        return (
            <div className="container-fluid">
                        <SideBar />
                        {this.props.children}
            </div>
        );
    }
}

App.propTypes = {
    children: PropTypes.object.isRequired
};

export default App;
import React, {PropTypes} from 'react';
import { Link, IndexLink } from 'react-router';
import {slide as Menu} from 'react-burger-menu';
import Radium from 'radium';

let RadiumLink = Radium(Link);
let RadiumIndexLink = Radium(IndexLink);

const SideBar = () => {
    return (


    <Menu className="bm-menu">
        <RadiumIndexLink className="bm-item-list" to="/" activeClassName="active">Home</RadiumIndexLink>
        <RadiumLink className="bm-item-list" to="/courses" activeClassName="active">Courses</RadiumLink>
        <RadiumLink className="bm-item-list" to="/about" activeClassName="active">About</RadiumLink>
    </Menu>

    );
};

export default SideBar;
#app {
    font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
    color: #4d4d4d;
    min-width: 550px;
    max-width: 850px;
    margin: 0 auto;
}

a.active {
    color: orange;
}

nav {
    padding-top: 20px;
    padding-bottom: 20px;
}

/* Position and sizing of burger button */
.bm-burger-button {
  position: fixed;
  width: 36px;
  height: 30px;
  left: 36px;
  top: 36px;
}

/* Color/shape of burger icon bars */
.bm-burger-bars {
  background: #373a47;
}

/* Position and sizing of clickable cross button */
.bm-cross-button {
  height: 24px;
  width: 24px;
}

/* Color/shape of close button cross */
.bm-cross {
  background: #bdc3c7;
}

/* General sidebar styles */
.bm-menu {
  background: #373a47;
  padding: 2.5em 1.5em 0;
  font-size: 1.15em;
}

/* Morph shape necessary with bubble or elastic */
.bm-morph-shape {
  fill: #373a47;
}

/* Wrapper for item list */
.bm-item-list {
  color: #b8b7ad;
  padding: 0.8em;
}

/* Styling of overlay */
.bm-overlay {
  background: rgba(0, 0, 0, 0.3);
}
为什么切换按钮出现在实际菜单的左侧,而实际菜单为什么不隐藏?如果我单击切换,菜单将向右移动更多…

将此添加到CSS中:

.bm-menu-wrap {
  bottom: 0;
  left: 0;
}
这将使菜单位于屏幕左侧

屏幕左侧出现的按钮是有意的,如果您希望它在滚动时粘在页面上而不是跟随您,请更改

.bm-burger-button {
   position:fixed;
} 

.bm-burger-button {
   position:absolute;
}