如何使用Vue在不同div模块实现点击按钮显示和隐藏功能

如何使用Vue在不同div模块实现点击按钮显示和隐藏功能

问题描述:

如果我再写一个div显示和隐藏效果就没有了,只有第一个div有效

切换隐藏/显示
1111111
    <div>
        <div id="div1">
            <button v-on:click="toggle">切换隐藏/显示</button>
            <div v-if="hide">1111111</div>
        </div>
    </div>
    
    <script>
        new Vue({
            el:"#div1",
            data:{
                hide:false
            },
            methods:{
                toggle:function(){
                    this.hide=!this.hide;
                    
                }
            }
        })
    </script>

啥问题,运行不是正常的吗

基于问题,给予建议
我帮你的代码重新写一遍,然后你自己试试就可以了

<div>
    <div id="div1">
        <button @click="toggle">切换隐藏/显示</button>
        <div v-if="hide">1111111</div>
    </div>
</div>
<script>
    new Vue({
        el:"#div1",
        data() {
            return {
              hide:false
            }
        },
        methods:{
            toggle(){
                this.hide = !this.hide;
            }
        }
    })
</script>

如有帮助 望点赞 采纳

这样就可以实现两个div切换显示隐藏了,如有帮助,望采纳 ^.^ 谢谢啦~

    <div>
        <div id="div1">
            <button v-on:click="toggle">切换隐藏/显示</button>
            <div v-if="hide">第一个div</div>
            <div v-else>第二个div</div>
            <!-- 或者:    <div v-if="!hide">第二个div</div> -->
        </div>
    </div>
    <script>
        new Vue({
            el:"#div1",
            data:{
                hide:false
            },
            methods:{
                toggle:function(){
                    this.hide=!this.hide;
                }
            }
        })
    </script>

data 官方几乎是规定必须以函数形式定义,
猜测可能是这个原因导致了问题,
data请一定按照:
data(){
return{
hide:false,
}
}
这样子定义吼