如果您在说“左侧菜单”时指的是侧边栏,则可以通过打开用户传奇来隐藏它(切换操作将继续起作用):
// 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!
你可以在加载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)