javascript - Pole dotazov vo Vue.js Router
Snažím sa odoslať pole z dotazu na backend pomocou Vue.js a routera.
Takže mám túto metódu:
submitForm () {
this.$router.push({
name: 'AuctionResult',
query: {
models: this.selectedModels.map(e => e.value)
}
})
},
Ako výsledok bude dotaz vyzerať takto: ?models=MODEL1&models=MODEL2... Ale ako môžem urobiť, aby vstupy vyzerali ako pole, takto: ?models[]=MODEL1&models[]=MODEL2... ???
Nenašiel som nič v dokumentácii.
Odpoveď č. 1
Ak chcete podporiť viacnásobné hodnoty vo formáte PHP/pole, môžete jednoducho nastaviť názov kľúča na to, čo chcete, tj
query: {
'models[]': this.selectedModels.map(e => e.value)
}
Toto môže vyjsť ako
?model%5B%5D=MODEL1&model%5B%5D=MODEL2...
ale to je v poriadku (je to len kódované URL) a váš serverový spracovateľ požiadaviek by to mal správne dekódovať.
