【发布时间】:2021-06-18 12:50:09
【问题描述】:
虽然在 ReactJS 中做过一些事情,但我对 React Native 还是很陌生。
有没有办法将下面的代码转换为完全 React Native?目前它适用于网络浏览器,但由于按钮、输入和表单标签,iphone 的 Expo GO 应用程序存在问题。
function PostMessage() {
let input;
const [postMessage, { data }] = useMutation(POST_MESSAGE);
return (
<View
style={{
width: "100%",
alignItems: "center",
marginTop: "1em",
}}
>
<form
onSubmit={(e) => {
e.preventDefault();
postMessage({ variables: { messageBody: input.value } });
input.value = "";
}}
style={{ alignItems: "center" }}
>
<input
ref={(node) => {
input = node;
}}
style={{ width: 500, height: 30 }}
/>
<button type="submit" style={{ height: 36 }}>
<Text>Send</Text>
</button>
</form>
</View>
);
}
【问题讨论】:
-
React 不能直接转成 React Native,因为它们是两个不同的东西。 react native 不支持
form和input等 DOM 元素。例如,input变为TextInput和button变为Button。
标签: javascript react-native expo graphql-js