2 回答

TA貢獻(xiàn)1825條經(jīng)驗 獲得超4個贊
只需添加我的評論作為答案,以便其他人將來可以輕松獲得它。
當(dāng)您嘗試將數(shù)組、對象或?qū)ο髷?shù)組傳遞給路由器時,您應(yīng)該首先stringify使用您的數(shù)據(jù)JSON.stringify并將其傳遞給路由器。然后您可以訪問它并將其解析回JSONwith JSON.parse。對于上述特殊情況,應(yīng)執(zhí)行以下操作
this.$router.push({
name: "SalesInvoice",
params: { SalesInvoice: JSON.stringify(this.stockmaster) }
});

TA貢獻(xiàn)1835條經(jīng)驗 獲得超7個贊
作為參考,我不建議使用JSONas URL 參數(shù),而是使用query參數(shù)。如果要將數(shù)據(jù)從一個請求發(fā)送到下一個請求,通常使用查詢參數(shù)而不是路由參數(shù)。
在您的情況下,將代碼更改為
this.$router.push({
name: "SalesInvoice",
query: { SalesInvoice: "abc" }
});
然后,您可以將您的路線定義更改為這樣的
{
path: 'sales-invoice',
name: 'SalesInvoice',
}
看,路徑中沒有更多:SalesInvoice內(nèi)容了。不再需要路由參數(shù),因為您現(xiàn)在通過查詢參數(shù)將數(shù)據(jù)提供給新路由。您可以使用任意數(shù)量的查詢參數(shù)(實際上是 URL 允許的最大長度),而無需在路由定義中定義它們。這為您提供了更大的靈活性。
您可以使用類似于訪問路由參數(shù)的查詢參數(shù)this.$route.query.SalesInvoice。
- 2 回答
- 0 關(guān)注
- 559 瀏覽
添加回答
舉報