如何从左侧菜单折叠开始

Chr*_*phe 5 react-admin

是否可以轻松地从折叠的左侧菜单开始,或者我是否需要更新布局?我希望默认情况下折叠菜单,仅显示图标。谢谢。

Max*_*lex 5

如果您在说“左侧菜单”时指的是侧边栏,则可以通过打开用户传奇来隐藏它(切换操作将继续起作用):

// closeSidebarSaga.js

import {
  put,
  takeEvery,
} from 'redux-saga/effects'

import {
  REGISTER_RESOURCE, // React-admin 3.5.0 
  setSidebarVisibility,
} from 'react-admin'

function* closeSidebar(action) {
  try {
    if (action.payload) {
      yield put(setSidebarVisibility(false))
    }
  } catch (error) {
    console.log('closeSidebar:', error)
  }
}

function* closeSidebarSaga() {
  yield takeEvery(REGISTER_RESOURCE, closeSidebar) 
}

export default closeSidebarSaga

// App.js:

import closeSidebarSaga from './closeSidebarSaga'

<Admin customSagas={[ closeSidebarSaga ]} ... }>
...
</Admin>
Run Code Online (Sandbox Code Playgroud)

在react-admin库本身中,显然是一个错误,在登录后的某个时间点,调用了操作SET_SIDEBAR_VISIBILITY = true!


Max*_*lex 5

你可以在加载Admin时设置初始状态,这样就不会有一开始侧边栏可见的时刻,然后就隐藏了: https: //marmelab.com/react-admin/Admin.html#initialstate

const initialState = {
  admin: { ui: { sidebarOpen: false, viewVersion: 0 } }
}    

<Admin
  initialState={initialState}
  ...
</Admin>
Run Code Online (Sandbox Code Playgroud)