doc: import supabase, useRouter, store, and computed and setup them up in the setup function

This commit is contained in:
Leon Xu
2021-12-31 12:16:02 -08:00
parent e99078b5c5
commit ca864d671d
+18 -5
View File
@@ -11,28 +11,41 @@
<router-link class="cursor-pointer" :to="{ name: 'Home' }"> <router-link class="cursor-pointer" :to="{ name: 'Home' }">
Home Home
</router-link> </router-link>
<router-link class="cursor-pointer" :to="{ name: '' }"> <router-link v-if="user" class="cursor-pointer" :to="{ name: '' }">
Create Create
</router-link> </router-link>
<router-link class="cursor-pointer" :to="{ name: 'Login' }"> <router-link
v-if="!user"
class="cursor-pointer"
:to="{ name: 'Login' }"
>
Login Login
</router-link> </router-link>
<li class="cursor-pointer">Logout</li> <li v-if="user" @click="logout" class="cursor-pointer">Logout</li>
</ul> </ul>
</nav> </nav>
</header> </header>
</template> </template>
<script> <script>
import { supabase } from "../supabase/init";
import { useRouter } from "vue-router";
import store from "../store/index";
import { computed } from "vue";
export default { export default {
setup() { setup() {
// Get user from store // Get user from store
const user = computed(() => store.state.user);
// Setup ref to router // Setup ref to router
const router = useRouter();
// Logout function // Logout function
const logout = async () => {
await supabase.auth.signOut();
router.replace({ name: "Page" });
};
return {}; return { logout, user };
}, },
}; };
</script> </script>