Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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
Javascript 如何在React Native中创建表单?_Javascript_Reactjs_Forms_React Native - Fatal编程技术网

Javascript 如何在React Native中创建表单?

Javascript 如何在React Native中创建表单?,javascript,reactjs,forms,react-native,Javascript,Reactjs,Forms,React Native,我想使用表单挂钩在react native中创建一个表单。这对我不起作用 我已使用以下命令安装了钩子窗体: npm install react-hook-form 这是我的代码: import React from "react"; import { useForm } from "react-hook-form"; const InscriptionScreen = () => { return ( <form> <input type="t

我想使用表单挂钩在react native中创建一个表单。这对我不起作用

我已使用以下命令安装了钩子窗体:

npm install react-hook-form
这是我的代码:

import React from "react";
import { useForm } from "react-hook-form";

const InscriptionScreen = () => {
  return (
    <form>
      <input type="text" placeholder="Email" name="email"/>
      <input type="password" placeholder="Password" name="password"/>
      <input type="submit"/>
    </form>
  );
};

export default InscriptionScreen
从“React”导入React;
从“react hook form”导入{useForm};
常量屏幕=()=>{
返回(
);
};
导出默认屏幕
我得到这个错误:

找不到名称输入的视图配置。确保组件名称以大写字母开头


我是否需要进行更多配置,或者我的代码中是否缺少关键字?

如果在
React Native
中使用HTML元素,则应使用
React Native
元素,还应使用
useForm
,如下所示:

import React,{useffect,useCallback}来自“React”;
从“react native”导入{View,TextInput,Button};
从“react hook form”导入{useForm};
常量屏幕=()=>{
常量{register,handleSubmit,setValue}=useForm();
const onSubmit=useCallback(formData=>{
console.log(formData);
}, []);
const onChangeField=useCallback(
名称=>text=>{
设置值(名称、文本);
},
[]
);
useffect(()=>{
注册(“电子邮件”);
注册(“密码”);
},[登记册];
返回(
);
};
导出默认屏幕;

如果在
React Native
中使用HTML元素,则应使用
React Native
元素,还应使用
useForm
,如下所示:

import React,{useffect,useCallback}来自“React”;
从“react native”导入{View,TextInput,Button};
从“react hook form”导入{useForm};
常量屏幕=()=>{
常量{register,handleSubmit,setValue}=useForm();
const onSubmit=useCallback(formData=>{
console.log(formData);
}, []);
const onChangeField=useCallback(
名称=>text=>{
设置值(名称、文本);
},
[]
);
useffect(()=>{
注册(“电子邮件”);
注册(“密码”);
},[登记册];
返回(
);
};
导出默认屏幕;

看看文档,您有一个react native form()的示例:

从“React”导入React;
从“react native”导入{文本、视图、文本输入、按钮、警报};
从“react hook form”导入{useForm,Controller};
导出默认函数App(){
const{control,handleSubmit,errors}=useForm();
const onSubmit=data=>Alert.Alert(
“表格数据”,
JSON.stringify(数据),
);
返回(
名字
args[0].nativeEvent.text}
规则={required:true}
defaultValue=“”
/>
{errors.firstName&&这是必需的。}
姓
args[0].nativeEvent.text}
defaultValue=“”
/>
);
}
在React Native中,您没有与HTML相同的原语(div、form、…)。
因此,您需要使用其他方法,例如
react hook form
中的
Controller
组件查看文档,您有一个react native form()的示例:

从“React”导入React;
从“react native”导入{文本、视图、文本输入、按钮、警报};
从“react hook form”导入{useForm,Controller};
导出默认函数App(){
const{control,handleSubmit,errors}=useForm();
const onSubmit=data=>Alert.Alert(
“表格数据”,
JSON.stringify(数据),
);
返回(
名字
args[0].nativeEvent.text}
规则={required:true}
defaultValue=“”
/>
{errors.firstName&&这是必需的。}
姓
args[0].nativeEvent.text}
defaultValue=“”
/>
);
}
在React Native中,您没有与HTML相同的原语(div、form、…)。 因此,您需要使用其他方法,例如
react hook表单
中的
Controller
组件