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

VUE3 basic tutorial: using Vue.js responsive framework template

WBOY
Release: 2023-06-16 08:17:31
Original
2168 people have browsed it

Vue.js is a front-end framework based on responsive systems and is widely popular in the front-end industry. Vue.js 3 is the latest version of Vue.js, adding many new features, such as faster rendering speed, better TypeScript support, and a better development experience. This article will focus on one of the basic tutorials of Vue.js 3 - template.

What is a template?

In Vue.js, templates are a way of writing HTML code. You can use it to describe the structure and layout of components, and use the instructions and expressions provided by Vue.js to declare the behavior and behavior of components. data processing. Vue.js's template syntax helps you create dynamic and reusable components more easily.

The following is a simple template example in which we use a component named hello:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<!-- 模板示例 -->

<template>

  <div>

    <h1>Hello {{ name }}!</h1>

    <input v-model="name" type="text">

  </div>

</template>

 

<!-- 定义一个名为 hello 的组件 -->

<script>

import { defineComponent } from 'vue';

 

export default defineComponent({

  data() {

    return {

      name: 'Vue',

    };

  },

});

</script>

Copy after login

In the above code, we define a component named hello components and use templates to define their structure and layout. Among them, the <h1> tag uses the Vue.js interpolation expression {{ name }}, which is used to dynamically display the text in the component. This expression will be combined with The data in the component is bound to ensure that when the data changes, the text is updated accordingly. We also used the v-model directive in the template to bind the name data, thus realizing a dynamic two-way binding input box.

Template syntax

In Vue.js templates, there are many syntaxes that can help us write components better. The following are some commonly used template syntax:

Interpolation expression

Interpolation expression can render the data in the component to the specified location. In the template, we use two curly braces {{ }} to wrap the data that needs to be bound, as follows:

1

2

3

4

5

<template>

  <div>

    {{ message }}

  </div>

</template>

Copy after login

In the above example, message The data is inserted into the <div> element. When message changes, the display area will automatically update.

Directive

Directive in Vue.js is a special attribute used to add more functionality to the template. The directive starts with the v- prefix, as follows:

1

<input v-model="message">

Copy after login

Among them, the v-model directive is used to implement two-way binding of data. The way the directive works is to bind the specified data and element attributes together to achieve dynamic update effects.

Computed property

The calculated property in Vue.js is a property that can dynamically calculate data. The value of a computed property is dynamically calculated based on the data it depends on, and is only recalculated when the data it depends on changes. The following is a simple calculated property definition:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<template>

  <div>

    {{ reversedMessage }}

  </div>

</template>

 

<script>

export default {

  data() {

    return {

      message: 'Hello Vue.js 3!',

    };

  },

  computed: {

    reversedMessage() {

      return this.message.split('').reverse().join('');

    },

  },

};

</script>

Copy after login

In this example, the value of the reversedMessage calculated property is calculated based on the message data, only when The value of reversedMessage will only be recalculated when message changes.

Conditional rendering

Sometimes we need to decide whether to render an element or component based on conditions. In Vue.js, you can use the v-if or v-show directive to implement conditional rendering, as shown below:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<template>

  <div>

    <div v-if="show">Hello Vue.js 3!</div>

    <div v-show="!show">Sorry, no message to show.</div>

  </div>

</template>

 

<script>

export default {

  data() {

    return {

      show: false,

    };

  },

};

</script>

Copy after login

In the above code, we Use the v-if and v-show directives to determine whether to display specified elements based on conditions.

Loop rendering

Loop rendering in Vue.js is a function that loops out a specified area and can dynamically display the data in the component. Vue.js supports multiple loop rendering methods, the most common of which is to use the v-for directive, as shown below:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<template>

  <div>

    <ul>

      <li v-for="(item, index) in list" :key="index">

        {{ item }}

      </li>

    </ul>

  </div>

</template>

 

<script>

export default {

  data() {

    return {

      list: ['item 1', 'item 2', 'item 3'],

    };

  },

};

</script>

Copy after login

In the above code, we use The v-for directive loops data out to the page. In each loop, we can use the interpolation expression {{ item }} to render the corresponding data item.

Summary

Vue.js templates are a simple and powerful way to help us create dynamic and reusable components. Using template syntax, we can better write HTML code and decouple data and behavior from views, improving the readability and maintainability of the code. In Vue.js 3, the template syntax has been further improved and optimized to better meet the needs of developers.

The above is the detailed content of VUE3 basic tutorial: using Vue.js responsive framework template. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
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
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!