第一步在main.js中
// 对one组件路由配置 { path: "/one", name: "one", // 别名:注意别名不带/ component: One }, { path: "/one/:id", name: "one", // 别名 component: One },
在list组件中
<template> <div> <h1>我是商品列表</h1> <ul> <li @click="goto(1)">商品1</li> <li @click="goto(2)">商品2</li> <li @click="goto(3)">商品3</li> <li @click="goto(4)">商品4</li> </ul> </div> </template> <script> export default { methods: { goto(id) { // 1.去 商品详情页 // this.$router.push({ // path:"/one" // }); // 2.去同一个组件,显示不同的内容! // 点击的时候,需要给人家传一个不同id // 参数写法: // /one?id=1 // /one/:id // 好理解写法: this.$router.push({ // path:"/one?id="+id path:"/one/"+id }); // query官方: // this.$router.push({ // path: "/one", // query:{ // // 参数名:形参 // id:id, // }, // }); // params官方: // this.$router.push({ // name:"one", // params:{ // id:id // } // }); }, }, }; </script> <style> </style>
在one组件中
<template> <div> <h3>我是其中某个商品的展示 JS方式转跳路由:</h3> <p>{{$route.query.id}}</p> <p>{{$route.params.id}}</p> </div> </template> <script> export default { created(){ console.log(this.$route.query.id); } } </script> <style> </style>