<!DOCTYPE html> <html> <head> <title>組件的切換</title> <meta charset="utf-8"> </head> <body> <!-- 方式一:結合v-if及v-else 只能實現兩個組件的切換--> <div id="app"> <!-- 添加事... ...
<!DOCTYPE html> <html> <head> <title>組件的切換</title> <meta charset="utf-8"> </head> <body> <!-- 方式一:結合v-if及v-else 只能實現兩個組件的切換--> <div id="app"> <!-- 添加事件修飾符prevent,阻止跳轉 --> <a href="" @click.prevent="flag=true">登錄</a> <a href="" @click.prevent="flag=false">註冊</a> <login v-if="flag"></login> <register v-else="flag"></register> </div> <!-- 方式二:使用vue提供的元素component 可實現多個組件的切換--> <div id="app2"> <a href="" @click.prevent="comName=login">登錄</a> <a href="" @click.prevent="comName=register">註冊</a> <!-- vue提供的元素,來展示對應名稱的組件 --> <!-- component是一個占位符,:is屬性是指定組件的名稱 --> <component :is="comName"></component> </div> </body> <script src="node_modules\vue\dist\vue.js"></script> <script> Vue.component("login",{ template:"<h3>登錄組件</h3>" }) Vue.component("register",{ template:"<h3>註冊組件</h3>" }) let vm = new Vue({ el:"#app", data:{ flag:false } }); let vm2 = new Vue({ el:"#app2", data:{ comName:"login" } }) </script> </html>