Home > Web Front-end > Vue.js > body text

Vue development skills revealed: How to skillfully use v-if, v-show, v-else, v-else-if to implement dynamic interfaces

WBOY
Release: 2023-09-15 10:13:41
Original
1352 people have browsed it

Vue development skills revealed: How to skillfully use v-if, v-show, v-else, v-else-if to implement dynamic interfaces

Vue development skills revealed: Flexible use of v-if, v-show, v-else, v-else-if to implement dynamic interfaces

Vue.js as A popular front-end framework that provides a rich set of instructions and functions that allow developers to easily build dynamic, interactive interfaces. Among them, v-if, v-show, v-else and v-else-if instructions play an important role in realizing dynamic interfaces. This article will show readers how to use these instructions flexibly through specific code examples.

The v-if directive is used to show or hide elements based on conditional judgment. If the condition is true, the element will be rendered into the DOM; if the condition is false, the element will be removed from the DOM. This dynamic nature makes it very convenient for us to deal with complex business logic.

The following is a simple example to display and hide the login and logout buttons by switching the value of the isLogin variable:

<template>
  <div>
    <button v-if="!isLogin" @click="login">登录</button>
    <button v-else @click="logout">注销</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      isLogin: false
    }
  },
  methods: {
    login() {
      this.isLogin = true;
    },
    logout() {
      this.isLogin = false;
    }
  }
}
</script>
Copy after login

In the above example, the v-if instruction is used to realize the display and hiding of the login and logout buttons. The value of the isLogin variable determines whether to display the login or logout button. When the login button is clicked, the login method is triggered and the isLogin variable is set to true to display the logout button; otherwise, the login button is displayed.

The v-show directive is similar to v-if and is also used to show or hide elements based on conditional judgment. The difference is that v-show displays and hides elements by controlling the display attribute of the element, rather than adding or removing elements from the DOM. Therefore, v-show switches faster than v-if and is suitable for situations where visibility is frequently switched.

The following is an example of using v-show to display or hide messages by clicking a button:

<template>
  <div>
    <button @click="toggleMessage">切换消息</button>
    <p v-show="showMessage">{{ message }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      showMessage: false,
      message: '这是一条消息'
    }
  },
  methods: {
    toggleMessage() {
      this.showMessage = !this.showMessage;
    }
  }
}
</script>
Copy after login

In the above example, when the button is clicked, the toggleMessage method inverts the value of the showMessage variable, so that Toggle showing or hiding messages.

The v-else and v-else-if directives are used to add an "otherwise" condition after v-if or v-show. When the conditions of v-if or v-show are not met, v-else will render the corresponding element, thus providing a selective display.

The following is an example of using v-else to determine odd and even numbers based on the isEven variable:

<template>
  <div>
    <p v-if="number % 2 === 0">这是一个偶数</p>
    <p v-else>这是一个奇数</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      number: 10
    }
  }
}
</script>
Copy after login

In the above example, the number variable is calculated to determine whether it is an even number. If it is an even number, the v-if condition is established, and the elements of "this is an even number" are displayed; if it is an odd number, the v-else condition is established, and the elements of "this is an odd number" are displayed.

By flexibly using the v-if, v-show, v-else and v-else-if instructions, we can easily realize the function of dynamically displaying the interface under different conditions. In actual projects, we can further combine other Vue.js features and functions, such as calculated properties, methods, and life cycle hooks, to achieve more complex and practical dynamic interfaces.

We hope that the examples and instructions in this article can help readers better master Vue development skills, thereby improving development efficiency and interface interactivity.

The above is the detailed content of Vue development skills revealed: How to skillfully use v-if, v-show, v-else, v-else-if to implement dynamic interfaces. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template