前提・実現したいこと
Vue+Vuetify+(Vuex+Vue Router+firestone)でクイズアプリを作ろうとしている初心者です。
上部のメニューバーを作成しているのですが、Vuetify の navigation-drawerが開きません。
発生している問題・エラーメッセージ
補足情報に書いた2つのサンプルプログラムから 要らない部分を削った上で、合成してメニューバーを作成しようとしています。
見た目は思い通りになったのですが、navigation-drawer が開かず メニューが出ません。
該当のソースコード
vue
1// Header.vue 2 3<template functional> 4 <div> 5 <v-navigation-drawer v-model="drawer" absolute temporary> 6 <v-list class="pt-0" dense> 7 <v-divider></v-divider> 8 <v-list-tile v-for="item in items" :key="item.title" :to="item.to"> 9 <v-list-tile-action> 10 <v-icon>{{ item.icon }}</v-icon> 11 </v-list-tile-action> 12 <v-list-tile-content> 13 <v-list-tile-title>{{ item.title }}</v-list-tile-title> 14 </v-list-tile-content> 15 </v-list-tile> 16 </v-list> 17 </v-navigation-drawer> 18 19 <v-toolbar dark color="primary" clipped-left fixed app> 20 <v-toolbar-side-icon 21 @click.stop="drawer = !drawer" 22 ></v-toolbar-side-icon> 23 <v-toolbar-title class="headline text-uppercase white--text"> 24 <span>Vuetify</span> 25 <span class="font-weight-light">MATERIAL DESIGN</span> 26 </v-toolbar-title> 27 <v-spacer></v-spacer> 28 29 <v-toolbar-items> 30 <v-btn flat to="/">Home</v-btn> 31 32 <v-menu 33 v-if="props.loggedIn" 34 auto 35 offset-y 36 bottom 37 > 38 <v-avatar slot="activator" class="ml-2 mr-5"> 39 <img :src="props.profile.picture" /> 40 </v-avatar> 41 <v-list> 42 <v-list-tile @click="props.logout"> 43 <v-list-tile-title>Logout</v-list-tile-title> 44 </v-list-tile> 45 </v-list> 46 47 </v-menu> 48 <v-btn 49 class="mr-5" 50 v-else 51 flat 52 @click="props.login" 53 >Login</v-btn> 54 </v-toolbar-items> 55 </v-toolbar> 56 </div> 57</template> 58 59<script> 60export default { 61 name: "Header", 62 data() { 63 return { 64 drawer: null, 65 items: [ 66 { title: "Home", icon: "dashboard", to: "/" }, 67 { title: "About", icon: "question_answer", to: "/about" } 68 ] 69 }; 70 } 71}; 72</script> 73 74 75//App.vue 76 77<template> 78 <v-app> 79 <Header 80 :login="login" 81 :logout="logout" 82 :profile="profile" 83 :loggedIn="loggedIn" 84 /> 85 <v-content> 86 <v-container> 87 <router-view></router-view> 88 </v-container> 89 </v-content> 90 <v-footer app></v-footer> 91 </v-app> 92</template> 93 94<script> 95 import { mapActions, mapGetters } from 'vuex'; 96 97 import Header from '@/components/Header'; 98 99 export default { 100 name: 'app', 101 102 components: { Header }, 103 104 computed: { 105 ...mapGetters('user', { 106 profile: 'profile', 107 loggedIn: 'loggedIn' 108 }) 109 }, 110 111 methods: { 112 ...mapActions('user', { 113 login: 'login', 114 logout: 'logout' 115 }) 116 } 117 }; 118</script>
試したこと
v-toolbar, v-navigation-drawer のプロパティ変更など試しましたが どうもうまくいきません。
補足情報(FW/ツールのバージョンなど)
1. Vuetify と Vue Router でレスポンシブなナビゲーションを作ってみました
https://qiita.com/yousakamori/items/6b5def3f3c1d1aeff5a4
2. Building a Progressive Quiz App with Vue, Vuex, and Firestore
https://medium.com/@amenallah.hsoumi/building-a-progressive-quiz-app-with-vue-vuex-and-firestore-part-1-ce73c7ba695d
バージョン
Vue 2.6.10
Vuetify 2.0.19
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/02 08:54
2019/10/02 13:37
2019/10/04 13:51