Heim  >  Artikel  >  PHP-Framework  >  So realisieren Sie die Interaktion zwischen thinkphp und vue

So realisieren Sie die Interaktion zwischen thinkphp und vue

PHPz
PHPzOriginal
2023-04-14 09:33:141850Durchsuche

Mit der kontinuierlichen Weiterentwicklung der Web-Technologie ist das Front-End- und Back-End-Trennmodell zu einem Trend in der Webanwendungsentwicklung geworden. In diesem Modell ist das Frontend für die Präsentation und Interaktion verantwortlich, während das Backend für die Datenverarbeitung und Geschäftslogik verantwortlich ist. Daher ist das Zusammenspiel zwischen Front- und Backend besonders kritisch. In diesem Artikel wird erläutert, wie die Interaktion in ThinkPHP und Vue implementiert wird.

1. Voraussetzungen

Bevor wir mit der Implementierung der Interaktion in ThinkPHP und Vue beginnen, müssen wir sicherstellen, dass die folgenden Voraussetzungen erfüllt sind:

1. Die PHP-Laufumgebung und die Datenbank wurden installiert

2 Das ThinkPHP-Framework wurde installiert

3. Vue.js wurde installiert

Wenn Sie diese Vorbereitungen noch nicht abgeschlossen haben, schließen Sie sie bitte zuerst ab, bevor Sie mit dem Lesen dieses Artikels fortfahren.

2. Von ThinkPHP bereitgestellte API

In ThinkPHP können wir eine API über den Controller bereitstellen, um mit Vue zu interagieren. Eine API kann eine GET-Anfrage oder eine POST-Anfrage sein. Im Allgemeinen werden GET-Anfragen zum Abrufen von Daten verwendet, während POST-Anfragen zum Ändern von Daten verwendet werden. Schauen wir uns ein Beispiel an.

1. Erstellen Sie einen Controller

Zuerst müssen wir einen Controller erstellen, um die API bereitzustellen. Angenommen, wir haben in ThinkPHP einen Controller namens „Index“ erstellt, können wir ihm eine Methode namens „getArticles“ hinzufügen, um eine API zum Abrufen einer Liste von Artikeln bereitzustellen.

public function getArticles()
{
    $articles = Db::name('article')->select();
    return json($articles);
}

Der obige Code verwendet die Db-Klasse, um die Liste der Artikel in der Datenbank abzurufen, konvertiert sie über die JSON-Funktion in das JSON-Format und gibt sie schließlich als Antwort an den Browser zurück.

2. Greifen Sie auf die API in Vue zu

Als nächstes müssen wir diese API in Vue aufrufen und die zurückgegebene Artikelliste abrufen. Wie wir alle wissen, kann Vue die Axios-Bibliothek zum Senden von HTTP-Anfragen verwenden. Schauen wir uns ein Beispiel an.

axios.get('/index/getArticles')
.then(function(response) {
    console.log(response.data);
})
.catch(function(error) {
    console.log(error);
});

Der obige Code verwendet die axios.get-Methode, um auf die oben erstellte API zuzugreifen, und druckt die Artikelliste auf der Konsole, wenn die Antwort erfolgreich ist. Beachten Sie, dass wir nur den Pfad zur API angeben müssen, da wir relative Pfade verwenden. Wenn Ihr Server mit einem virtuellen Host konfiguriert ist, müssen Sie den Pfad als absoluten Pfad konfigurieren.

3. Von Vue bereitgestellte Komponenten

Zusätzlich zur Verwendung der API stellt Vue auch viele Komponenten bereit, um die Interaktion mit dem Backend komfortabler zu gestalten. Vue stellt beispielsweise eine Komponente namens Axios zur Verfügung, die uns die Nutzung der Axios-Bibliothek erleichtert.

1. Axios installieren

Um Axios verwenden zu können, müssen wir es zuerst in unserem Vue-Projekt installieren. Führen Sie den folgenden Befehl in der Konsole aus:

npm install axios --save

2. Mit Axios

Nach Abschluss der Installation können wir ihn in der Vue-Komponente verwenden. Erstellen wir in Vue eine Komponente namens „ArticleList“, um eine Liste von Artikeln anzuzeigen.

<template>
  <div>
    <ul>
      <li v-for="article in articles">{{ article.title }}</li>
    </ul>
  </div>
</template>

<script>
  import axios from 'axios';

  export default {
    data() {
      return {
        articles: []
      }
    },
    created() {
      axios.get('/index/getArticles')
      .then((response) => {
        this.articles = response.data;
      })
      .catch((error) => {
        console.log(error);
      });
    }
  }
</script>

Der obige Code verwendet die axios.get-Methode, um die Liste der Artikel von der API abzurufen und sie in den Eigenschaften der Komponente zu speichern. Die Komponente führt beim Erstellen automatisch die Erstellungsfunktion aus, sodass die Liste der Artikel angezeigt wird, sobald diese abgerufen werden.

4. Zusammenfassung

Jetzt haben wir gelernt, wie man Interaktion in ThinkPHP und Vue implementiert. Unabhängig davon, ob Sie APIs oder Komponenten verwenden, kann die Kommunikation zwischen Front- und Back-End problemlos erreicht werden. Ich hoffe, dieser Artikel ist hilfreich für Sie und wünsche Ihnen mehr Erfolg bei der Entwicklung von Webanwendungen!

Das obige ist der detaillierte Inhalt vonSo realisieren Sie die Interaktion zwischen thinkphp und vue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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