Ich habe ein Menu
als Gebrüll:Wie verstecken oder verhindern Sie, dass ein antd-Untermenü gerendert wird?
<Menu>
<SubMenu>
<Menu.Item>Help</Menu.Item>
<Menu.Item>Antd</Menu.Item>
</SubMenu>
</Menu>
Das Problem ist jetzt, dass ich SubMenu
oder Menu.Item
für einige Situationen verstecken muß? so etwas wie unten:
<Menu>
<Acl item="submenu">
<SubMenu>
<Acl item="help">
<Menu.Item>Help</Menu.Item>
</Acl>
<Menu.Item>Antd</Menu.Item>
</SubMenu>
</Acl>
</Menu>
Die Acl
Komponente für den Benutzerzugriff auf das Menü überprüfen wird und entscheiden, um den Text zu verbergen oder zeigen.
Gibt es Codebeispiele für antd
, um dieses Ergebnis oder Vorschläge zu erreichen?
Hinweis: Ich habe schon Acl
als Gebrüll umgesetzt:
import React, { Component } from 'react';
class Acl extends Component {
constructor(props) {
super(props);
}
render() {
const props = this.props;
if(hasAccess(props.item))
return <div>{props.children}</div>;
return null;
}
}
export default Acl;
Aber nach mache ich diesen Fehler hätte: Cannot read property 'indexOf' of undefined
danke, ich denke, das wird nicht funktionieren, weil ich die Frage gestellt habe. Bitte beachten Sie die letzte Aktualisierung. – szero
Weißt du, welche Zeile diesen Fehler verursacht? Wird es aus der Ant-Komponente geworfen? Können Sie den Code für 'hasAccess()' auch teilen? – Dane