From 14377edd1eaf8d81fb137a1c41cc01bf4c0170ed Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Wed, 30 Jul 2025 11:53:25 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=BF=AB=E6=8D=B7=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=BC=95=E5=AF=BC=E8=AF=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/(tabs)/ask.tsx | 1 + components/ask/chat.tsx | 2 +- components/ask/send.tsx | 30 ++++++++++++++++++++++++++++-- 3 files changed, 30 insertions(+), 3 deletions(-) diff --git a/app/(tabs)/ask.tsx b/app/(tabs)/ask.tsx index 510296f..5ce0ec2 100644 --- a/app/(tabs)/ask.tsx +++ b/app/(tabs)/ask.tsx @@ -139,6 +139,7 @@ export default function AskScreen() { useFocusEffect( useCallback(() => { setIsHello(true); + setUserMessages([]) }, []) ); diff --git a/components/ask/chat.tsx b/components/ask/chat.tsx index e5f5fea..2517f1e 100644 --- a/components/ask/chat.tsx +++ b/components/ask/chat.tsx @@ -43,7 +43,7 @@ function ChatComponent( data={userMessages} keyExtractor={keyExtractor} renderItem={({ item, index }) => { - const itemStyle = index === 0 ? { marginTop: 16 } : {}; + const itemStyle = index === 0 ? { marginTop: 16, marginHorizontal: 16 } : { marginHorizontal: 16 }; return ( {MessageItem({ t, setSelectedImages, selectedImages, insets, item, sessionId, modalVisible, setModalVisible, setModalDetailsVisible, modalDetailsVisible })} diff --git a/components/ask/send.tsx b/components/ask/send.tsx index 45b7f91..d25b719 100644 --- a/components/ask/send.tsx +++ b/components/ask/send.tsx @@ -70,6 +70,16 @@ export default function SendMessage(props: Props) { // 确保在下一个事件循环中更新状态,避免可能的渲染问题 requestAnimationFrame(() => { setIsHello(false); + setUserMessages([ + { + content: { + text: '想打开记忆盲盒吗?描述你的回忆,我来帮你找回照片、生成影片或解锁隐藏彩蛋✨' + + }, + role: 'Assistant', + timestamp: new Date().toISOString() + } + ]) }); } }); @@ -124,14 +134,30 @@ export default function SendMessage(props: Props) { } }, [inputValue, conversationId, selectedImages, createNewConversation, getConversation]); + const handleQuitly = (type: string) => { + setIsHello(false) + setUserMessages(pre => ([ + ...pre, + { + content: { + text: type === "search" + ? '想找合适的图片?试试这样搜更精准:\n\n• 明确主题:比如"秋日森林""极简风书桌""复古海报设计"\n\n• 加上细节:想找特定风格?试试"水彩风猫咪""赛博朋克城市夜景";需要特定用途?比如"无版权风景图""可商用图标"\n\n• 描述场景:比如"阳光透过树叶的光斑""雨天咖啡馆窗外"\n\n输入这些关键词,说不定就能找到你想要的画面啦~' + : '想让你的视频内容更吸睛、更有故事感吗?不妨试试从搜索图片入手吧!\n\n你可以先确定视频的主题——是治愈系的自然风景,还是复古风的城市街景,或是充满活力的生活瞬间?然后根据主题去搜索相关的图片,比如想做"春日限定"主题,就搜"樱花飘落""草地野餐""嫩芽初绽"之类的画面。\n\n这些图片能帮你快速理清视频的画面脉络,甚至能激发新的创意——比如一张老照片里的复古物件,或许能延伸出一段关于时光的故事;一组星空图片,说不定能串联成关于梦想与远方的叙事。把这些图片按你的想法串联起来,配上合适的音乐和文案,一段有温度的视频就诞生啦,试试看吧~' + }, + role: 'Assistant', + timestamp: new Date().toISOString() + } + ])) + }; + return ( - + handleQuitly('search')}> 检索素材 - + handleQuitly('video')}> 创作视频