Пользовательский интерфейс материала/переключатель левой панели приложения material-ui не работает

я использую пакеты реагирования на метеоры, и у меня правильно отображается панель приложений, но я не могу заставить работать переключатель навигации. я использую код прямо из примеров, и я даже прочитал код в репозитории material-ui, и кажется, что он должен работать. Что я делаю не так?

let {AppBar, LeftNav} = mui

AppLayout = React.createClass({
  menuItems: [
    {route: '/profile/bio', text: 'bio'},
    {route: '/profile/photos', text: 'photos'},
    {route: '/profile/videos', text: 'videos'},
    {route: '/profile/filmography', text: 'filmography'},
    {route: '/profile/settings', text: 'settings'},
    {route: '/profile/accounts', text: 'accounts'}
  ],

  _toggle(e){
    e.preventDefault()
    this.refs.leftNav.toggle()
  },

  render(){
    return (
      <div>
        <AppBar onLeftIconButtonTouchTap={this._toggle} title='react+meteor'  />
        <LeftNav ref="leftNav" docked={false} menuItems={this.menuItems} />
        <AppView />
      </div>
   )
  }
})

person rkstar    schedule 08.07.2015    source источник


Ответы (1)


поэтому следуйте руководству здесь: http://react-in-meteor.readthedocs.org/en/latest/client-npm/

я пропустил одну часть руководства mui здесь: http://material-ui.com/#/get-started

вот мой lib/app.browserify.js файл:

// material ui
mui = require('material-ui')
injectTapEventPlugin = require("react-tap-event-plugin")
// Needed for onTouchTap
// Can go away when react 1.0 release
// Check this repo:
// https://github.com/zilverline/react-tap-event-plugin
injectTapEventPlugin()

// this is needed for material-ui styling to work properly
ThemeManager = new mui.Styles.ThemeManager()
React.initializeTouchEvents(true)

я пропустил эту строку injectTapEventPlugin(), которая на самом деле делает инъекцию! после того, как я добавил это и обновил браузер, меню работает отлично.

person rkstar    schedule 09.07.2015