vue-router.esm.js?8c4f:16 [vue-router] missing param for named route "magneto.xmqsDx.edit": Expected "id" to be defined
造成這種警告的原因是因為路由里面綁定了一個id,而路由在params里面沒有找到id。
1、路由配置:
2、頁面用到該路由時的配置:
因為我的路由配置里面帶有id,而我頁面運用該路由時,不僅需要帶id,還需要帶其它數據過去,所以params里面放多個鍵值對數據,所以需要標明鍵值對里面有id,要不然路由找不到id,就會報Expected "id" to be defined.
如果不需要帶其它數據的話,也可以這樣
因為scope.row里面包含了id.
其它類似的警告錯誤也可以類似這樣解決:如果路由配置帶有參數,那么頁面運用該路由時,params里面必須有相應的參數,意思是跳轉到頁面時{{$route.params.參數鍵}}能拿到數據,比如我這的{{$route.params.id}}能拿到id值。注意:在html里面取路由值是--標簽外,比如:<div>{{$route.params.id}</div>;標簽內,比如:
<el-button @click="$router.push({name: 'xxxxxxx.xxxxx.xxxxx',params: $route.params})">返回</el-button>。vue的js里面是:this.xmqsId= this.$route.params.id;