网上的例子基本都基于组件式的或者部分的,不太利于理解。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="vue.js"></script> <script src="router.js"></script> <style> .app li{ float: left; display: inline-block; width: 33%; } .router-view{ width: 100%; height: 100%; overflow: hidden; } .app .tab{ display: flex; width: 100%; height: 40px; line-height: 40px; border-bottom:1px solid rgba(7,17,27,0.1); } .tab-item{ flex: 1; text-align: center; } .tab-item a{ display: block; font-size: 14px; color: rgb(77,85,93); } .tab-item a:hover{ color: red; } </style> </head> <body> <div class="app"> <div class="tab"> <div class="tab-item"> <router-link to="/goods">商品</router-link> </div> <div class="tab-item"> <router-link to="/ratings">评价</router-link> </div> <div class="tab-item"> <router-link to="/seller">商家</router-link> </div> </div> <div class="router-view"></div> <router-view></router-view> </div> <script> const goods = { template: '<div>我是商家页</div>' } const rate= { template: '<div>评论页</div>' } const seller = { template: '<div>评论页</div>' } const routes = [{ path: '/goods', component: goods }, { path: '/seller', component: seller }, { path: '/ratings', component: rate }] const router = new VueRouter({routes, linkActiveClass: 'active' }) new Vue({ el: '.app', router }) </script> </body> </html>