'use client'; import { useContext, useEffect } from 'react'; import { ChatContext } from '@/context/ChatContext'; import { Role } from '@/utils/constants'; // import { exampleMessages } from '@/utils/exampleMessages'; import { initEventListenerScroll } from '@/utils/scroll'; import { Message, SystemMessage } from './Message'; const SYSTEM_MESSAGE = ( <> 本页面会将数据发送给 OpenAI
请注意隐私风险,禁止发送违法内容 ); const WELCOME_MESSAGE = '你好!有什么我可以帮助你的吗?'; const LOADING_MESSAGE = '正在努力思考...'; export const Messages = () => { let { isLoading, messages, history, historyIndex, startNewChat } = useContext(ChatContext)!; // 初始化滚动事件 useEffect(initEventListenerScroll, []); // 如果当前在浏览聊天记录,则展示该聊天记录的 messages if (history && typeof historyIndex === 'number') { messages = history[historyIndex].messages; } // messages = exampleMessages; return (
{SYSTEM_MESSAGE} {messages.map((message, index) => ( ))} {isLoading && } {messages.length > 1 && ( 连续对话会加倍消耗 tokens, 开启新对话 )}
); };