vue.js實戰——vue元素復用


Vue在渲染元素時,出於效率考慮,會盡可能地復用已有的元素而非重新渲染,例:

<!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="./vue.js"></script>
</head>
<body>
    <div id="app">
        <template v-if="type==='name'">
            <label>用戶名:</label>    
            <input type="text" placeholder="輸入用戶名">
        </template> 
        <template v-else>
            <label>郵箱</label>
            <input type="text" placeholder="輸入郵箱">
        </template>
        <button @click="handleToggleClick">切換輸入類型</button>
    </div>
    <script>
        //input和label會被復用   不信你看控制台Elements    在用戶名input輸入內容后,點擊button,會發現input的內容沒有改變!!!!!
        var app=new Vue({
            el:'#app',
            data:{
                type:'name'
            },
            methods:{
                handleToggleClick:function(){
                    this.type=this.type==='name'?'mail':'name';
                }
            }
        })
    </script>
</body>
</html>

注意::

可以使用添加key屬性,取消元素的復用。(key值必須是唯一的!!!!!!!!)


免責聲明!

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



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