import React, { useEffect, useState } from "react"; import Taro from "@tarojs/taro"; import { View } from "@tarojs/components"; import { check_login_status } from "@/services/loginService"; export function getCurrentFullPath(): string { const pages = Taro.getCurrentPages(); const currentPage = pages.at(-1); if (currentPage) { console.log(currentPage, "currentPage get"); const route = currentPage.route; const options = currentPage.options || {}; const query = Object.keys(options) .map((key) => `${key}=${options[key]}`) .join("&"); return query ? `/${route}?${query}` : `/${route}`; } return ""; } export default function withAuth
( WrappedComponent: React.ComponentType
, ) { const ComponentWithAuth: React.FC
= (props: P) => {
const [authed, setAuthed] = useState(false);
useEffect(() => {
const is_login = check_login_status();
setAuthed(is_login);
if (!is_login) {
const currentPage = getCurrentFullPath();
// Taro.redirectTo({
// url: `/pages/login/index/index${
// currentPage ? `?redirect=${encodeURIComponent(currentPage)}` : ''
// }`,
// })
}
}, []);
// if (!authed) {
// return