所以我的 usestate 钩子在父级中使用后什么都不打印,我不确定在 typescript 中导入类型,因为我只是从 javascript 移动。
interface Props {
sendTextMessage: (text?: string) => void
}
const Chatbar: React.FC<Props> = ({ sendTextMessage }) => {
const [text, setText] = useState<string>()
return (
<IonInput
class='input'
value={text}
placeholder='Aa'
onIonChange={(e) => setText(e.detail.value!)}
onKeyPress={(event) => {
if (event.key === 'Enter') {
sendTextMessage(text)
setText('')
}
}}
// clearInput
></IonInput>
)
}
父函数
function sendTextMessage(message) {
console.log(message)
const messageEvent = {
type: 'message',
timestamp: Date.now(),
source: {
type: room?.get('type'),
conId: room?.get('id'),
userId: 'me',
},
message: {
type: 'text',
text: message,
},
}
<Chatbar sendTextMessage={sendTextMessage} />
我也尝试在父文件中使用另一种状态,但什么也没做!!!我不知道我做错了什么