Heim Web-Frontend js-Tutorial Wie implementiert man die Menüberechtigungssteuerung in React?

Wie implementiert man die Menüberechtigungssteuerung in React?

May 18, 2018 am 11:09 AM
react 权限 菜单

In diesem Artikel wird hauptsächlich die Methode zur Implementierung der Menüberechtigungssteuerung in React vorgestellt. Jetzt teile ich sie mit Ihnen und hoffe, dass sie Ihnen helfen kann.

Normalerweise erfordert das Backend-Verwaltungssystem des Unternehmens eine Berechtigungskontrolle, das heißt, Benutzer mit unterschiedlichen Rollen sehen unterschiedliche Menüs, wie unten gezeigt:

Unten durch Reagieren Um ein solches Backend-Management-System (Gerüst) zu implementieren, Funktionseinführung:

1. Die Menüpunkte oben werden dynamisch basierend auf der Rolle des Benutzers generiert.

2. Seitentestmenüelemente werden dynamisch basierend auf dem ausgewählten oberen Menü generiert.

Direkt zum Code gehen:

Routing-Konfiguration:

export default (
  <Route path="/" component={App}>
    <IndexRoute component={EmployeeList}/>
    <Route path="/employee" component={Employee}>
      <IndexRoute component={EmployeeList}/>
      <Route path="/employee/list" component={EmployeeList}/>
      <Route path="/employee/detail/:id" component={EmployeeDetail}/>
    </Route>
    <Route path="/goods" component={Goods}>
      <IndexRoute component={GoodsList}/>
      <Route path="/goods/list" component={GoodsList}/>
      <Route path="/goods/detail/:id" component={GoodsDetail}/>
    </Route>
  </Route>
)
Nach dem Login kopieren

Der obere Menüpunkt wird zu einer separaten Komponente:

// 动态数据
import React, { Component } from &#39;react&#39;
import { Link } from &#39;react-router&#39; // 引入Link处理导航跳转
import { connect } from &#39;react-redux&#39;
import { fetchPostsIfNeeded, updateSubMenuWhenClick } from &#39;../actions/count&#39;
import { Menu } from &#39;antd&#39;;
class TopMenu extends Component {
  constructor(props){
    super(props);
    this.handleMenuClick = this.handleMenuClick.bind(this);
  }

  handleMenuClick(e){
    // console.log(e.item.props[&#39;data-menukey&#39;]);
    const { updateSubMenuWhenClick } = this.props
    updateSubMenuWhenClick(true, e.item.props[&#39;data-menukey&#39;])
  }
  componentWillMount() {
  }
  componentDidMount() {
    const { fetchPostsIfNeeded } = this.props
    fetchPostsIfNeeded()
  }
  render() {
    const { menuList, fetchPostsIfNeeded } = this.props
    if(menuList.length != 0) {
      fetchPostsIfNeeded(true, menuList[0].key)
    }

    return (
      <Menu
        theme="dark"
        mode="horizontal"
        defaultSelectedKeys={[&#39;0&#39;]}
        style={{ lineHeight: &#39;64px&#39; }}
        onClick={this.handleMenuClick}
      >
      {
        menuList.map((e, index) => 
          <Menu.Item key={index} data-menukey={e.key} >
            <Link to={{ pathname: e.url }} >{e.name}</Link>
          </Menu.Item>
        )
      }
      </Menu>
    )
  }
}

const getList = state => {
  return {
    menuList: state.update.menuList
  }
}

export default connect(
  getList, 
  { fetchPostsIfNeeded, updateSubMenuWhenClick }
)(TopMenu)
Nach dem Login kopieren

Wenn in der Renderfunktion die Länge der dynamisch generierten Top-Menü-Daten nicht 0 ist, werden die Seitenmenüelemente basierend auf der Taste des Top-Menüs dynamisch generiert.

const { menuList, fetchPostsIfNeeded } = this.props
    if(menuList.length != 0) {
      fetchPostsIfNeeded(true, menuList[0].key)
    }
Nach dem Login kopieren

Verwandte Empfehlungen:

Wie können Komponenten in React geschrieben werden?

Was sind die Lebenszyklusfunktionen von React? Komponenten

Wissen über Ereignissysteme reagieren

Das obige ist der detaillierte Inhalt vonWie implementiert man die Menüberechtigungssteuerung in React?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Root-Berechtigungen mit einem Klick aktivieren (schnell Root-Berechtigungen erhalten) Root-Berechtigungen mit einem Klick aktivieren (schnell Root-Berechtigungen erhalten) Jun 02, 2024 pm 05:32 PM

Es ermöglicht Benutzern, detailliertere Vorgänge und Anpassungen des Systems durchzuführen. Die Root-Berechtigung ist eine Administratorberechtigung im Android-System. Das Erhalten von Root-Rechten erfordert normalerweise eine Reihe langwieriger Schritte, die für normale Benutzer jedoch möglicherweise nicht sehr benutzerfreundlich sind. Durch die Aktivierung von Root-Berechtigungen mit einem Klick wird in diesem Artikel eine einfache und effektive Methode vorgestellt, mit der Benutzer problemlos Systemberechtigungen erhalten können. Verstehen Sie die Bedeutung und Risiken von Root-Berechtigungen und genießen Sie größere Freiheiten, damit Benutzer das Mobiltelefonsystem vollständig kontrollieren können. Verstärken Sie die Sicherheitskontrollen, passen Sie Designs an und Benutzer können vorinstallierte Anwendungen löschen. Allerdings sind beispielsweise das versehentliche Löschen von Systemdateien, das zu Systemabstürzen führt, die übermäßige Nutzung von Root-Rechten und die versehentliche Installation von Malware ebenfalls riskant. Bevor Sie Root-Rechte verwenden

So legen Sie den Berechtigungszugriff im QQ-Bereich fest So legen Sie den Berechtigungszugriff im QQ-Bereich fest Feb 23, 2024 pm 02:22 PM

Wie stelle ich den Berechtigungszugriff im QQ-Bereich ein? Sie können den Berechtigungszugriff im QQ-Bereich festlegen, aber die meisten Freunde wissen nicht, wie der Berechtigungszugriff im QQ-Bereich festgelegt wird Editor für Benutzer. Interessierte Benutzer kommen vorbei und schauen sich um! Tutorial zur QQ-Nutzung QQ-Bereich So legen Sie den Berechtigungszugriff fest 1. Öffnen Sie zunächst die QQ-Anwendung, klicken Sie auf [Avatar] in der oberen linken Ecke der Hauptseite 2. Erweitern Sie dann den Bereich für persönliche Informationen auf der linken Seite und klicken Sie auf die Funktion [Einstellungen]. in der unteren linken Ecke; 3. Rufen Sie die Einstellungsseite auf. Wischen Sie, um die Option [Datenschutz] zu finden. 4. Wählen Sie als nächstes den Dienst [Berechtigungseinstellungen] aus. Wählen Sie dann die neueste Seite aus ]; 6. Neu im QQ Space einrichten

Berechtigungsverwaltung im Discuz-Forum: Lesen Sie den Leitfaden zur Berechtigungseinstellung Berechtigungsverwaltung im Discuz-Forum: Lesen Sie den Leitfaden zur Berechtigungseinstellung Mar 10, 2024 pm 05:33 PM

Berechtigungsverwaltung für Discuz-Foren: Lesen Sie die Anleitung zur Berechtigungseinstellung. Bei der Berechtigungsverwaltung für Discuz-Foren ist die Berechtigungseinstellung ein entscheidender Teil. Dabei kommt der Einstellung der Leserechte eine besondere Bedeutung zu, da sie den Umfang der Inhalte bestimmt, die verschiedene Nutzer im Forum sehen können. In diesem Artikel werden die Leseberechtigungseinstellungen des Discuz-Forums und die flexible Konfiguration für unterschiedliche Anforderungen ausführlich vorgestellt. 1. Grundlegende Konzepte von Leseberechtigungen Im Discuz-Forum umfassen Leseberechtigungen hauptsächlich die folgenden Konzepte, die verstanden werden müssen: Standard-Leseberechtigungen: Standard nach der Registrierung eines neuen Benutzers

PHP, Vue und React: Wie wählt man das am besten geeignete Frontend-Framework aus? PHP, Vue und React: Wie wählt man das am besten geeignete Frontend-Framework aus? Mar 15, 2024 pm 05:48 PM

PHP, Vue und React: Wie wählt man das am besten geeignete Frontend-Framework aus? Angesichts der kontinuierlichen Weiterentwicklung der Internettechnologie spielen Front-End-Frameworks eine wichtige Rolle bei der Webentwicklung. PHP, Vue und React sind drei repräsentative Frontend-Frameworks, jedes mit seinen eigenen einzigartigen Eigenschaften und Vorteilen. Bei der Auswahl des zu verwendenden Frontend-Frameworks müssen Entwickler eine fundierte Entscheidung treffen, die auf den Projektanforderungen, Teamfähigkeiten und persönlichen Vorlieben basiert. In diesem Artikel werden die Eigenschaften und Verwendungsmöglichkeiten der drei Front-End-Frameworks PHP, Vue und React verglichen.

Integration von Java-Framework und Front-End-React-Framework Integration von Java-Framework und Front-End-React-Framework Jun 01, 2024 pm 03:16 PM

Integration von Java-Framework und React-Framework: Schritte: Richten Sie das Back-End-Java-Framework ein. Projektstruktur erstellen. Konfigurieren Sie Build-Tools. Erstellen Sie React-Anwendungen. Schreiben Sie REST-API-Endpunkte. Konfigurieren Sie den Kommunikationsmechanismus. Praxisfall (SpringBoot+React): Java-Code: RESTfulAPI-Controller definieren. Reaktionscode: Rufen Sie die von der API zurückgegebenen Daten ab und zeigen Sie sie an.

Implementierungsschritte zur Implementierung der Menünavigationsleiste mit Schatteneffekt mithilfe von reinem CSS Implementierungsschritte zur Implementierung der Menünavigationsleiste mit Schatteneffekt mithilfe von reinem CSS Oct 16, 2023 am 08:27 AM

Die Schritte zum Implementieren einer Menünavigationsleiste mit Schatteneffekt mithilfe von reinem CSS erfordern spezifische Codebeispiele. Im Webdesign ist die Menünavigationsleiste ein sehr häufiges Element. Durch das Hinzufügen eines Schatteneffekts zur Menünavigationsleiste können Sie nicht nur deren Ästhetik verbessern, sondern auch das Benutzererlebnis verbessern. In diesem Artikel verwenden wir reines CSS, um eine Menünavigationsleiste mit Schatteneffekt zu implementieren, und stellen spezifische Codebeispiele als Referenz bereit. Die Implementierungsschritte sind wie folgt: HTML-Struktur erstellen Zuerst müssen wir eine grundlegende HTML-Struktur erstellen, um die Menünavigationsleiste aufzunehmen. von

So erhalten Sie die TrustedInstaller-Berechtigung „Empfohlene Schritte zum Erhalten der TrustedInstaller-Berechtigung' So erhalten Sie die TrustedInstaller-Berechtigung „Empfohlene Schritte zum Erhalten der TrustedInstaller-Berechtigung' Feb 06, 2024 pm 05:48 PM

In diesem Artikel lernen Sie das Wesen von TI kennen und erfahren weiter, wie Sie mithilfe von Powershell- und NtObjectManager-Modulen TI-Berechtigungen erhalten, um jeden gewünschten Vorgang im Betriebssystem abzuschließen. Wenn Sie jemals ein Windows-System verwaltet haben, sollten Sie mit dem Konzept der Gruppe „TrustedInstaller“ (TI) vertraut sein. Die TI-Gruppe verfügt über wichtige Berechtigungen für den Betrieb von Systemdateien und der Registrierung. Sie können beispielsweise die Eigenschaften von Dateien im Ordner System32 anzeigen. In den Sicherheitsoptionen haben die TI-Gruppe und der Dateieigentümer die Berechtigung, Dateien zu löschen und zu ändern. Daher ist es für den Betrieb von Systemdateien und Registrierung erforderlich

So bearbeiten Sie Nachrichten auf dem iPhone So bearbeiten Sie Nachrichten auf dem iPhone Dec 18, 2023 pm 02:13 PM

Mit der nativen Nachrichten-App auf dem iPhone können Sie gesendete Texte ganz einfach bearbeiten. Auf diese Weise können Sie Ihre Fehler und Zeichensetzung korrigieren und sogar falsche Phrasen/Wörter, die möglicherweise in Ihren Text übernommen wurden, automatisch korrigieren. In diesem Artikel erfahren Sie, wie Sie Nachrichten auf dem iPhone bearbeiten. So bearbeiten Sie Nachrichten auf dem iPhone. Erforderlich: iPhone mit iOS16 oder höher. Sie können iMessage-Text nur in der Nachrichten-App bearbeiten, und zwar nur innerhalb von 15 Minuten nach dem Senden des Originaltexts. Nicht-iMessage-Text wird nicht unterstützt und kann daher nicht abgerufen oder bearbeitet werden. Starten Sie die Nachrichten-App auf Ihrem iPhone. Wählen Sie unter „Nachrichten“ die Konversation aus, deren Nachricht Sie bearbeiten möchten

See all articles