【发布时间】:2021-01-26 11:45:14
【问题描述】:
所以我的 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} />
我也尝试在父文件中使用另一个状态,但什么也没做!!!我不知道我做错了什么
【问题讨论】:
-
是否正确登录
sendTextMessage?您能否提供一个重现问题的运行代码框并在此处提供链接? -
是的,它确实可以正确记录,其他的也可以。我不知道如何制作代码沙箱
-
将代码从 React 模板复制/粘贴到新工作区,或者如果您有 github 存储库,则可以直接导入。 codesandbox.io 如果是控制台记录您所期望的,那么我认为我们需要更多代码和上下文。它在哪里消失了?
标签: reactjs typescript ionic-framework