gpt4 book ai didi

ReactJS Formik 以红色显示错误消息

转载 作者:行者123 更新时间:2023-12-01 23:57:00 25 4
gpt4 key购买 nike

在 ReactJS 中,我正在开发一个类组件并使用 Formik 进行验证。我能够进行验证,但错误消息显示为正常颜色(黑色)。如何在任何 HTML 元素(span、div 等)中添加此错误消息。

验证代码如下

import React, { Component } from 'react'
import { useFormik } from 'formik';
import { Formik, FormikProps, Form, Field, ErrorMessage } from 'formik';
import * as Yup from 'yup';

export class SubmitCase extends Component {

handleSubmit = (values, {
props = this.props,
setSubmitting
}) => {
setSubmitting(false);
return;
}
render() {
const formFields = {...this.state};
return (
<Formik
initialValues={{
subject: formFields.subject
}}
validate={(values) => {
let errors = {};
if(!values.subject)
errors.subject = "subject Required";
//check if my values have errors
return errors;
}
}
onSubmit={this.handleSubmit}
render={formProps => {
return(
<Form>
<Field type="text" placeholder="First Name" name="subject" value={formFields.subject} onChange={this.changeEventReact}/>
<ErrorMessage name="subject" />
<button type="submit">
Submit Form
</button>
</Form>
);
}}
/>);
}
}

我用来显示消息。错误消息显示为普通文本(黑色文本)。如何将其更改为红色。

最佳答案

表格 formik docs <ErrorMessage>组件接受子属性作为函数 children?: ((message: string) => React.ReactNode)

所以你可以通过返回一个像这样包装错误消息的组件来实现你想要的

<ErrorMessage name="subject">
{ msg => <div style={{ color: 'red' }}>{msg}</div> }
</ErrorMessage>

关于ReactJS Formik 以红色显示错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62617198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com