#css #vue.js #vue-component #vuetify.js
#css #vue.js #vue-компонент #vuetify.js
Вопрос:
Когда я нахожусь в дочернем компоненте, я хотел бы изменить весь фон страницы (включая панель навигации приложения) на цвет, отличный от цвета по умолчанию.
Когда я перехожу к другому компоненту, должен быть возвращен стиль по умолчанию.
Есть идеи, люди?
Комментарии:
1. Используете ли вы значение Bool для переключения этого дочернего компонента? Или вы используете другой метод для активации дочернего компонента?
2. Я перехожу к дочернему компоненту с помощью маршрутизатора
Ответ №1:
Может быть, вам нужно Vuetify theme
? Тема может содержать набор цветов
https://vuetifyjs.com/en/customization/theme/
Вы можете изменить черно-белую тему, this.$vuetify.theme.dark = true/false
в компоненте
Комментарии:
1. но как тема меняет весь фон (включая панель навигации приложения) приложения? это изменит только контейнер. правильно?
2. @chaitanyam это зависит от того, как вы используете тему, вы можете использовать
computed
свойство для установкиbackgroundColor
любого нужного вам элемента
Ответ №2:
Согласно вашему ответу на мой комментарий, это то, что вы, вероятно, хотите сделать: настройте хранилище Vuex и храните переменные с цветовыми кодами там. Таким образом, вы можете получить доступ к этим цветам отовсюду в вашем приложении. Затем в вашем приложении вы можете проверить текущий маршрут с помощью:
this.$route
Таким образом, вы могли бы проверить, совпадает ли маршрут с маршрутом, на котором вы хотите изменить цвет.
Затем примените цвет ко всем элементам.
PS. Если вы хотите изменить только элементы, которые можно найти в app.vue, вам вообще не обязательно сохранять переменные в хранилище, но вы можете просто проверить свой маршрутизатор и назначить цвета соответствующим образом.
Надеюсь, это помогло вам!