From a243e667465fb1336895c9240f1af4e32fffdab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=AC=94=E8=AE=B0=E6=9C=AC=E9=87=8C=E7=9A=84=E6=B0=B8?= =?UTF-8?q?=E5=B9=B3?= Date: Fri, 25 Jul 2025 16:15:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9C=AC=E6=AC=A1=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=86=85=E5=AE=B9=E5=A6=82=E4=B8=8B=20layout?= =?UTF-8?q?=E5=85=BC=E5=AE=B9=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nkebao/package-lock.json | 50 +++++++++++++++++-- nkebao/package.json | 1 + nkebao/src/components/Layout/Layout.tsx | 20 +++++++- nkebao/src/main.tsx | 3 +- .../workspace/group-push/detail/index.tsx | 1 - 5 files changed, 67 insertions(+), 8 deletions(-) diff --git a/nkebao/package-lock.json b/nkebao/package-lock.json index 9be58e0b..04da9b13 100644 --- a/nkebao/package-lock.json +++ b/nkebao/package-lock.json @@ -1,12 +1,13 @@ { - "name": "nkebao-base", - "version": "0.1.0", + "name": "cunkebao", + "version": "3.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "nkebao-base", - "version": "0.1.0", + "name": "cunkebao", + "version": "3.0.0", + "license": "MIT", "dependencies": { "@ant-design/icons": "^5.6.1", "antd": "^5.13.1", @@ -17,6 +18,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.20.0", + "vconsole": "^3.15.1", "zustand": "^5.0.6" }, "devDependencies": { @@ -2037,6 +2039,18 @@ "dev": true, "license": "MIT" }, + "node_modules/copy-text-to-clipboard": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz", + "integrity": "sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/copy-to-clipboard": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", @@ -2046,6 +2060,17 @@ "toggle-selection": "^1.0.6" } }, + "node_modules/core-js": { + "version": "3.44.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.44.0.tgz", + "integrity": "sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -4056,6 +4081,11 @@ "dev": true, "license": "MIT" }, + "node_modules/mutation-observer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mutation-observer/-/mutation-observer-1.0.3.tgz", + "integrity": "sha512-M/O/4rF2h776hV7qGMZUH3utZLO/jK7p8rnNgGkjKUw8zCGjRQPxB8z6+5l8+VjRUQ3dNYu4vjqXYLr+U8ZVNA==" + }, "node_modules/nano-memoize": { "version": "3.0.16", "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-3.0.16.tgz", @@ -6143,6 +6173,18 @@ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, + "node_modules/vconsole": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vconsole/-/vconsole-3.15.1.tgz", + "integrity": "sha512-KH8XLdrq9T5YHJO/ixrjivHfmF2PC2CdVoK6RWZB4yftMykYIaXY1mxZYAic70vADM54kpMQF+dYmvl5NRNy1g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.17.2", + "copy-text-to-clipboard": "^3.0.1", + "core-js": "^3.11.0", + "mutation-observer": "^1.0.3" + } + }, "node_modules/vite": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/vite/-/vite-7.0.5.tgz", diff --git a/nkebao/package.json b/nkebao/package.json index e56678ba..4e9c5bf2 100644 --- a/nkebao/package.json +++ b/nkebao/package.json @@ -13,6 +13,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.20.0", + "vconsole": "^3.15.1", "zustand": "^5.0.6" }, "devDependencies": { diff --git a/nkebao/src/components/Layout/Layout.tsx b/nkebao/src/components/Layout/Layout.tsx index eea22b39..43c51f1f 100644 --- a/nkebao/src/components/Layout/Layout.tsx +++ b/nkebao/src/components/Layout/Layout.tsx @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useEffect } from "react"; import { SpinLoading } from "antd-mobile"; import styles from "./layout.module.scss"; @@ -15,8 +15,24 @@ const Layout: React.FC = ({ footer, loading = false, }) => { + // 移动端100vh兼容 + useEffect(() => { + const setRealHeight = () => { + document.documentElement.style.setProperty( + "--real-vh", + `${window.innerHeight * 0.01}px` + ); + }; + setRealHeight(); + window.addEventListener("resize", setRealHeight); + return () => window.removeEventListener("resize", setRealHeight); + }, []); + return ( -
+
{header &&
{header}
}
{loading ? ( diff --git a/nkebao/src/main.tsx b/nkebao/src/main.tsx index f62c6b7b..97bc4497 100644 --- a/nkebao/src/main.tsx +++ b/nkebao/src/main.tsx @@ -2,6 +2,7 @@ import React from "react"; import { createRoot } from "react-dom/client"; import App from "./App"; import "./styles/global.scss"; - +import VConsole from "vconsole"; +new VConsole(); const root = createRoot(document.getElementById("root")!); root.render(); diff --git a/nkebao/src/pages/mobile/workspace/group-push/detail/index.tsx b/nkebao/src/pages/mobile/workspace/group-push/detail/index.tsx index 89279962..12c4d56d 100644 --- a/nkebao/src/pages/mobile/workspace/group-push/detail/index.tsx +++ b/nkebao/src/pages/mobile/workspace/group-push/detail/index.tsx @@ -48,7 +48,6 @@ const Detail: React.FC = () => { 群发推送详情
} - footer={} >