【发布时间】:2020-05-24 19:09:02
【问题描述】:
我不知道如何解决这个问题...请帮帮我,我只是初学者
const onSubmit = async (e) => { //Here I submit my form
e.preventDefault();
const nickname = e.target.nickname.value;
if (!nickname || !fileUrl) {
return;
}
await db.collection("request").doc(playerID).set({
nickname: nickname,
image: fileUrl,
});
};
useEffect(() => {
const fetchRequest = async () => {
const requestCollection = await db.collection("request").get();
setRequest(
requestCollection.docs.map((doc) => {
return doc.data();
})
);
};
fetchRequest();
}, []);
返回:
return (
<Panel id={id}>
<Div>
<FormLayout>
<Input maxLength="16" top="Введите ваш никнейм" nickname={nickname} onChange={(e) => setNickname(e.target.value)} placeholder="Dit"/>
<Input maxLength="8" top="Введите ваш игровой ID" playerID={playerID} onChange={(e) => setPlayerID(e.target.value)} type="tel" placeholder="675"/>
<Select top="Категория" value={category} onChange={(e) => setCategory(e.target.value)} placeholder="Выберите категорию скина">
<option value="Обычные скины">Обычные скины</option>
<option value="Питомцы">Питомцы</option>
<option value="Частицы">Частицы</option>
</Select>
<File type='file' top="Загрузите ваше фото" onChange={onFileChange} before={<Icon24Camera />} controlSize="l">
Открыть галерею
</File>
<Button mode="commerce" size="xl" onClick={(e) => {onSubmit(); onGoHome();}} data-to="home" >Отправить</Button>
</FormLayout>
<ul>
{request.map((playerID) => {
return (
<li key={playerID.nickname}>
<img width="100" height="100" src={playerID.image} alt={playerID.nickname} />
<p>{playerID.nickname}</p>
</li>
);
})}
</ul>
</Div>
</Panel>
);
}
如果有人教我,我会很高兴...我使用 Firebase Cloud Firestore 进行数据库和存储。 我试图找到答案,但我找不到
【问题讨论】:
-
如果您需要更多代码或解释,请告诉我
-
将
e参数添加到您的 onSubmit 调用中:onClick={(e) => {onSubmit(e) ... -
我该怎么做?
-
现在我收到了这个错误:未处理的拒绝(TypeError):无法读取未定义的属性“值”``` constnickname = e.target.nickname.value; ```
-
出于好奇,您到底想阻止什么默认值?.. 您的按钮只是一个普通按钮,它不是提交类型,所以它唯一要做的就是您输入的内容你的点击。
标签: javascript reactjs firebase