diff --git a/src/components/TopNavBar/index.vue b/src/components/TopNavBar/index.vue
index 5b8a8ee..004c42e 100644
--- a/src/components/TopNavBar/index.vue
+++ b/src/components/TopNavBar/index.vue
@@ -8,9 +8,9 @@
class="flex flex-items-center flex-justify-between border-box pl-8 pr-8"
:style="navContentStyle"
>
-
+
-
+
@@ -53,6 +53,12 @@ const props = defineProps({
type: Boolean,
default: true,
},
+ // 左侧按钮行为
+ leftAction: {
+ type: String,
+ default: "back",
+ validator: (value) => ["back", "home"].includes(value),
+ },
// 背景颜色
background: {
type: String,
@@ -148,6 +154,8 @@ const navContentStyle = computed(() => {
};
});
+const leftIconType = computed(() => (props.leftAction === "home" ? "home-filled" : "left"));
+
const hasBackListener = computed(() => {
const vnodeProps = instance?.vnode?.props || {};
return Boolean(vnodeProps.onBack);
@@ -159,6 +167,14 @@ const handleBack = () => {
emit("back");
return;
}
+
+ if (props.leftAction === "home") {
+ uni.reLaunch({
+ url: "/pages/index/index",
+ });
+ return;
+ }
+
// 如果没有监听back事件,默认执行返回上一页
uni.navigateBack({
delta: 1,
diff --git a/src/pages-aigc/sharedWork/sharedWork.vue b/src/pages-aigc/sharedWork/sharedWork.vue
index 417a974..ebec826 100644
--- a/src/pages-aigc/sharedWork/sharedWork.vue
+++ b/src/pages-aigc/sharedWork/sharedWork.vue
@@ -1,8 +1,9 @@
-
+
@@ -106,14 +107,11 @@ const openAigcHome = () => {
});
};
-const handleBack = () => {
- const pages = getCurrentPages();
- if (pages.length > 1) {
- uni.navigateBack();
- return;
- }
-
- openAigcHome();
+const openAppHome = () => {
+ uni.reLaunch({
+ url: "/pages/index/index",
+ fail: () => showToast("打开首页失败"),
+ });
};
const handleCreateOwn = async () => {