Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 根据用户操作,使用默认值初始化Formik_Node.js_Reactjs_Fullcalendar_React Bootstrap_Formik - Fatal编程技术网

Node.js 根据用户操作,使用默认值初始化Formik

Node.js 根据用户操作,使用默认值初始化Formik,node.js,reactjs,fullcalendar,react-bootstrap,formik,Node.js,Reactjs,Fullcalendar,React Bootstrap,Formik,我试图根据用户在日历上单击的日期,使用默认值初始化一个Formik表单 应该很容易做到,但我缺乏ReactJS和Formik方面的经验,无法找到解决方案 在过去的几天里,我尝试了不同的方法,但都没有成功 在这个问题上,我将非常感谢您的帮助。多谢各位 下面我附上一张关于这个项目的图表,以便更好地理解我正在尝试做的事情 提前谢谢 在formik中,我们可以选择访问值并在其上执行某些操作 验证字段 请看下面的代码 它的蚁族成分 { 常量错误={}; 如果(!values.date){ error

我试图根据用户在日历上单击的日期,使用默认值初始化一个Formik表单

应该很容易做到,但我缺乏ReactJS和Formik方面的经验,无法找到解决方案

在过去的几天里,我尝试了不同的方法,但都没有成功

在这个问题上,我将非常感谢您的帮助。多谢各位

下面我附上一张关于这个项目的图表,以便更好地理解我正在尝试做的事情

提前谢谢


在formik中,我们可以选择访问值并在其上执行某些操作
验证字段
请看下面的代码 它的蚁族成分

{
常量错误={};
如果(!values.date){
errors.date='日期是必需的';
}
如果(值。日期){
//我们现在有日期,用户选择它
警报(“你好”)
}
返回错误;
}}
//提交行动
onSubmit={(值,{setSubmitting})=>{
警报('表单已提交')
设置提交(假);
}}
>
{({
价值观
handleChange,
错误,
手推,
setFieldValue
}) => (
setFieldValue(“日期”,时间)}
占位符文本={“选择时间”}
showTimeSelect
timeFormat=“HH:mm”
时间间隔={15}
dateFormat=“LLL”
timeCaption=“时间”
/>
)}
验证选项可以处理您的问题


最后,我解决了将属性initialValues存储在我的Modal组件的状态中的问题,该属性用于初始化字段


因此,当EventEmitter触发事件时,侦听器将从日历中接收自定义数据,我将使用默认值初始化Formik表单。

当用户单击日期并选择它时,您可以根据您的值访问它,并认为当我们有值时。例如,日期我想打开一个模式,如果你需要更多的示例注释和标记meHi@sinafarhadi,我不太明白你的意思。你能告诉我更多的细节吗。谢谢你的回复。你想为你写一个答案吗@sknkronic?@sinafarhadi是的,我想请。如果你知道解决办法,你有时间来帮助我。非常感谢。试试这个方法。。。它应该对你有用谢谢你的回答,但是你的解决方案在这种情况下对我没有帮助
<Formik

     initialValues={{
        date: '',
     }}

     // Validating Data
     validate={values => {

     const errors = {};

      if (!values.date) {
        errors.date = 'Date Is Required';
      }
      if (values.date) {
        // We Have Date Now and User Selects it
        alert('Hello')
      }

      return errors;
     }}

     // Submit Action
     onSubmit={(values, { setSubmitting }) => {
        alert('form submitted')
        setSubmitting(false);
     }}
     >
     {({
      values,
      handleChange,
      errors,
      handleSubmit,
      setFieldValue
     }) => (

        <form onSubmit={handleSubmit}>
             <div>
                 <DatePicker
                     selected={values.date}
                     onChange={(time)=> setFieldValue("date", time)}
                     placeholderText={"Choose Time"}
                     showTimeSelect
                     timeFormat="HH:mm"
                     timeIntervals={15}
                     dateFormat="LLL"
                     timeCaption="Time"
                  />
              </div>
         <form />
     )}
    </Formik>