Merge pull request #482 from Klotske/fix-next-link

#479 - Fixed FOUC on website
This commit is contained in:
AbdBarho
2023-01-07 16:23:08 +01:00
committed by GitHub
3 changed files with 16 additions and 4 deletions
@@ -2,6 +2,7 @@ import { Box, Link, Text, useColorModeValue } from "@chakra-ui/react";
import { Popover } from "@headlessui/react";
import { AnimatePresence, motion } from "framer-motion";
import Image from "next/image";
import NextLink from "next/link";
import { signOut, useSession } from "next-auth/react";
import React from "react";
import { FiLayout, FiLogOut, FiSettings } from "react-icons/fi";
@@ -77,6 +78,7 @@ export function UserMenu() {
<Box className="flex flex-col gap-1">
{accountOptions.map((item) => (
<Link
as={NextLink}
key={item.name}
href={item.href}
aria-label={item.desc}
+2 -1
View File
@@ -1,4 +1,5 @@
import { Box, Button, Link, Text, Tooltip, useColorMode } from "@chakra-ui/react";
import { Box, Button, Text, Tooltip, useColorMode } from "@chakra-ui/react";
import Link from "next/link";
import { useRouter } from "next/router";
import { FiSun } from "react-icons/fi";
import { IconType } from "react-icons/lib";
+12 -3
View File
@@ -1,6 +1,6 @@
import { Box, CircularProgress, SimpleGrid, Text, useColorModeValue } from "@chakra-ui/react";
import Head from "next/head";
import { useState } from "react";
import { useEffect, useState } from "react";
import { getDashboardLayout } from "src/components/Layout";
import { MessageTable } from "src/components/Messages/MessageTable";
import fetcher from "src/lib/fetcher";
@@ -13,18 +13,27 @@ const MessagesDashboard = () => {
const [messages, setMessages] = useState([]);
const [userMessages, setUserMessages] = useState([]);
const { isLoading: isLoadingAll } = useSWRImmutable("/api/messages", fetcher, {
const { isLoading: isLoadingAll, mutate: mutateAll } = useSWRImmutable("/api/messages", fetcher, {
onSuccess: (data) => {
setMessages(data);
},
});
const { isLoading: isLoadingUser } = useSWRImmutable(`/api/messages/user`, fetcher, {
const { isLoading: isLoadingUser, mutate: mutateUser } = useSWRImmutable(`/api/messages/user`, fetcher, {
onSuccess: (data) => {
setUserMessages(data);
},
});
useEffect(() => {
if (messages.length == 0) {
mutateAll();
}
if (userMessages.length == 0) {
mutateUser();
}
}, [messages, userMessages]);
return (
<>
<Head>