#javascript #html #jquery #vue.js
#javascript #HTML #jquery #vue.js
Вопрос:
работаю с Laravel 5, и у меня есть следующая кнопка переключения начальной загрузки
<button class="btn btn-primary" id="menu-toggle">Toggle Menu</button>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
и мой код jquery
<script>
$("#menu-toggle").click(function(e) {
e.preventDefault();
$("#wrapper").toggleClass("toggled");
});
</script>
тогда как я мог бы написать вышеуказанные коды jquery в vue js для совместимости с вышеуказанной кнопкой переключения
Ответ №1:
- Добавьте вызываемый атрибут данных
isMenuVisible
, инициализированный значением false. - Добавьте прослушиватель кликов к кнопке , которая переключает значение
isMenuVisible
между true и false:@click="isMenuVisible = !isMenuVisible
. - Условно примените класс, который скрывает меню при
isMenuVisible
значении false.
:class="{ 'hide': !isMenuVisible }"
<template>
<div>
<button @click="isMenuVisible = !isMenuVisible">Toggle Menu</button>
<div class="menu" :class="{ 'hide': !isMenuVisible }">...</div>
</div>
</template>
<script>
export default {
data () {
return {
isMenuVisible: false
}
}
}
</script>
Комментарии:
1. @ranawaka пожалуйста, объясните, что не работает. Вы каким-то образом установили Vue (CDN, npm)? У вас ошибка?