• vueDay04——v-if else show


    一、v-if的使用

    我们可以像c语言一样去使用v-if结构

    比如单用v-if,连用v-if  v-else,或者是v-if v-else-if v-else

    注意:

    1.v-if v-else-if需要绑定值,而v-else不需要绑定值

    2.if结构可以用在不同的标签类型之间

    1. <div v-if="firstShowFlag">
    2. first被渲染
    3. </div>
    4. <div v-else-if="secondShowFlag">
    5. second被渲染
    6. </div>
    7. <p v-else>
    8. third被渲染
    9. </p>

    我们可以利用一个button绑定一个方法区实现某些样式的切换,但是感觉不如class与style绑定来的实在,但是好处是逻辑比较清晰,如果用绑定的方式不容易一眼看出逻辑

    1. <button @click="changevalue">
    2. 点击我进行切换
    3. </button>
    4. <div v-if="showFlag">
    5. <h1>Vue is awesome!</h1>
    6. </div>
    7. <div v-else>
    8. <h1>Oh no 😢,我是菜🐔</h1>
    9. </div>
    1. const showFlag = ref(true)
    2. const changevalue = () => {
    3. showFlag.value = !showFlag.value
    4. }

    还有一点template上的v-if这个没看懂,草草草草草

    二、v-if和v-show的大同小异

    相同点就是,他们二者都可以控制标签是否渲染,可以选择性的控制元素的显示

    不同点就是 

    1.v-show不支持在template上面使用

    2.v-show并不会擦除本身标签,而是切换了一个叫display的CSS样式

    3.v-if每次都会被销毁或者创建,而v-show只会将其藏起来或者显示出来

    4.v-if只有在第一次为true的时候才会渲染 而v-show不管怎么都会渲染

    三、全部代码

     

    1. <template v-if="trueFlag">
    2. <button @click="changevalue">
    3. 点击我进行切换
    4. </button>
    5. <div v-if="showFlag">
    6. <h1>Vue is awesome!</h1>
    7. </div>
    8. <div v-else>
    9. <h1>Oh no 😢,我是菜🐔</h1>
    10. </div>
    11. </template>
    12. <script lang="ts" setup>
    13. // import { defineComponent } from '@vue/composition-api'
    14. import { ref } from 'vue'
    15. // false true
    16. const booleanFlagArray = ref([false,false,false])
    17. const firstShowFlag = ref(booleanFlagArray.value[0])
    18. const secondShowFlag = ref(booleanFlagArray.value[1])
    19. const thirdShowFlag = ref(booleanFlagArray.value[2])
    20. const showFlag = ref(true)
    21. const falseFlag = ref(false)
    22. const trueFlag = ref(true)
    23. const changevalue = () => {
    24. showFlag.value = !showFlag.value
    25. }
    26. </script>

  • 相关阅读:
    VHDL、Verilog和SystemVerilog的比较
    python Matplotlib绘制三维图
    CLWY权限管理(六)--- 权限实现
    c++网络编程
    子类继承了什么、多态、 向上转型
    【langchain手把手2】构造Prompt模版
    通讯网关软件029——利用CommGate X2MQTT实现MQTT访问DDE数据源
    Ensp用windows回环口连接cloud配置
    GIS技巧之一键下载城市路网数据
    使用SpringBoot和ZXing实现二维码生成与解析
  • 原文地址:https://blog.csdn.net/m0_72678953/article/details/134044562