Директива v-once в Vue3

Vue3 内置指令Встроенные директивы Vue3


v-onceДиректива используется для рендеринга элементов и компонентов только один раз; последующие обновления будут пропущены.


Базовое описание

v-onceДиректива используется для пометки элементов и компонентов, которые должны отображаться только один раз. При последующих повторных рендерах элемент и все его дочерние элементы будут рассматриваться как статическое содержимое и пропускаться. Это можно использовать для оптимизации производительности обновления.

  • Ожидаемый тип: отсутствует (не принимает выражения)
  • Назначение: рендерит элементы и компоненты только один раз; последующие обновления рассматриваются как статическое содержимое и пропускаются.

Сценарии использования

1. Оптимизация статического содержимого

Когда определённое содержимое не нуждается в обновлении, использование v-once позволяет избежать ненужного повторного рендеринга:

Пример

<template>
  <div>
    <h1 v-once>{{ title }}</h1>
    <p>Динамическое содержимое: {{ dynamicContent }}</p>
    <button @click="updateContent">Обновить</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
title: 'Статический заголовок',
dynamicContent: 'Переменное содержимое'
    }
  },
  methods: {
    updateContent() {
this.dynamicContent = 'Обновлено: ' + new Date().toLocaleTimeString()
    }
  }
}
</script>

Vue3 内置指令Встроенные директивы Vue3

Другие расширения