vue實現組件切換的兩種方式


<!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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM