Что лучше un vue.СС2, использовать в-Если или V-показать?

Что лучше un vue.СС2, использовать в-Если или V-показать?

23.02.2017 05:56:12 Просмотров 35 Источник

Я работаю в проекте с vue 2. Мне нужно знать, в каком случае производительность лучше: использовать v-if или v-show?. У меня есть длинный список, и в списке каждого элемента есть скрытая форма, которую мне нужно показать и скрыть, чтобы нажать кнопку, содержащую список каждого элемента. Что лучше переключить класс v-show или добавить и удалить форму с v-if?

У вопроса есть решение - Посмотреть?

Ответы - Что лучше un vue.СС2, использовать в-Если или V-показать? / What is better un vue.js 2, use v-if or v-show?

Ron van Asseldonk

23.02.2017 06:53:25

Короткий ответ: используйте v-if, если условие не будет меняться так часто. Используйте v-show, если вы хотите переключать условие чаще.

Примечание: v-showне удаляет элемент из DOM, если ваше условие ложно. Таким образом, люди могут видеть это, когда они проверяют вашу страницу с помощью, например, firebug.

bypatryk

01.06.2017 02:37:48

tl;dr

Предполагая, что речь идет строго о производительности:

  • v-show: дорогая начальная нагрузка, дешевое переключение,
  • v-if: дешевая начальная нагрузка, дорогое переключение.

Эван Ты дал более глубокий ответ на форуме VueJS .

v-show всегда компилирует и визуализирует все-он просто добавляет стиль "display: none"к элементу. Он имеет более высокую начальную стоимость загрузки, но переключение очень дешево.

Несравненно, v-if истинно условен: он ленив, поэтому, если его начальное условие ложно, он даже ничего не будет делать. Это может быть хорошо для начального времени загрузки. Когда условие истинно, v-if будет затем компилировать и отображать его содержимое. Переключение блока v-if фактически разрушает все внутри него, например, компоненты внутри v-if постоянно разрушаются и воссоздаются при переключении, поэтому переключение огромного блока v-if может быть дороже, чем v-show.

https://stackoverflow.com/questions/42419192/what-is-better-un-vue-js-2-use-v-if-or-v-show/44296275#comment105409920_44296275
Связь оборвалась.
Rajat

11.07.2018 03:21:27

V-шоу

Он загрузит/отобразит все элементы в DOM сразу, и если значение false v-show= "false", то он установит отображение элемента на "none"

V-Если

Он не будет загружать / визуализировать элемент до тех пор, пока условие не будет выполнено, и визуализирует элемент как условие выполнено

PALLAMOLLA SAI

04.01.2019 08:59:46

v-showjust only переключает свойство отображения CSS (либо "none", либо"block"). Когда мы используем v-show, HTML DOM будет только на странице (со свойством" display").

Но где, как если бы мы использовали v-ifон удаляет весь DOM со страницы или воссоздает весь DOM на основе условия.

Проверьте этот пример.

<p v-if="ok">If Check</p>
<p v-show="ok">Show Check</p> //try to set "ok" by true and false and inspect HTML
Закрыть X