<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <script src="js/vue.js"></script> <script src="js/vue-router-3.0.1.js"></script> </head> <body> <div id="app"> <router-link to='/'>Account</router-link> <router-view></router-view> </div> <template id='tmp1'> <div> <h1>這是 Account 組件</h1> <!-- login 和register 是account的子路由 --> <router-link to='/account/login'>登錄</router-link> <router-link to='/account/register'>注冊</router-link> <router-view></router-view> </div> </template> <script> //組件的模板對象 var account = { template: "#tmp1" } var login={ template:"<h3>登錄</h3>" } var register={ template:"<h3>注冊</h3>" } var router = new VueRouter({ routes: [{ path: '/account', component: account, //使用children 屬性,實現子路由。同時子路由的path前面不要帶斜線/,否則永遠以根路徑開始請求,這樣不方便用戶去理解URL地址。即若帶斜線,路徑中顯示/login,而非/account/login. children:[ {path:'login',compoment:login}, {path:'register',compoment:register}, ] }] }) //創建Vue實例,得到 ViewModel var vm = new Vue({ el: '#app', data: {}, methods: {} }); </script> </body> </html>