Der Vue-Router löscht Abfrageparameter
P粉947296325
2023-09-02 17:34:15
<p>Ich verwende Nuxt2/Vue2 und habe Probleme beim Abrufen der Abfrageparameter beim Generieren der Website. </p>
<p>Ich habe meine URL in der Nuxt-Konfiguration erstellt, indem ich einen Eintrag in Contentful wie diesen verwendet habe: </p>
<pre class="brush:php;toolbar:false;">generate: {
Crawler: falsch,
asynchrone Routen() {
const items = (
Warten auf fetchEntriesByContentType({ contentType: "items" })
).map(entry => {
const Routen = {
Route: `/items/item/${entry.fields.slug}`,
Nutzlast: Eintrag,
}
Rückwege;
});
Artikel zurücksenden;
}
}</pre>
<p>Wenn ich mich auf der Konsole anmelde und versuche, in einer Nuxt-Konfigurationsdatei zu debuggen, wird wie erwartet eine URL mit Parametern zurückgegeben, z. B. /items/item/101?type=book</p>
<p>Wenn ich jedoch versuche, in meiner Vue-Komponente mit this.$route.path, this.$route.fullPath oder this.$route.query usw. darauf zuzugreifen, wird nach dem „?“ kein Inhalt zurückgegeben . Zum Beispiel. Für das obige Beispiel wäre es immer /items/item/101</p>
<p>Muss ich der Nuxt-Konfiguration etwas hinzufügen, um Abfrageparameter einzuschließen?
Mir ist aufgefallen, dass, wenn ich auf this.$route klicke, um zur Definition zu gelangen, zur Vue-Router-Datei in meinen Knotenmodulen gewechselt wird, obwohl ich Vue-Router nicht installiert habe. Verursacht dies das Problem? </p>
您不会在
map
回调中返回任何内容,假设必须返回routes
,它应该是这样的: