Javascript 我写Input.js的方式是否是我存在不变冲突的原因:对象作为子错误无效?
我有一个错误,上面写着:不变冲突:对象作为React子对象无效。错误并没有确切说明是哪个组件生成了它,但从错误的描述来看,它似乎在抱怨渲染对象而不是组件的情况。我似乎在例如my Input.js中看到了这种行为,它呈现:Javascript 我写Input.js的方式是否是我存在不变冲突的原因:对象作为子错误无效?,javascript,react-native,components,expo,Javascript,React Native,Components,Expo,我有一个错误,上面写着:不变冲突:对象作为React子对象无效。错误并没有确切说明是哪个组件生成了它,但从错误的描述来看,它似乎在抱怨渲染对象而不是组件的情况。我似乎在例如my Input.js中看到了这种行为,它呈现: const Input = (props, context) => { const styles = getStyles(props, context); return ( <View style={styles.container}>
const Input = (props, context) => {
const styles = getStyles(props, context);
return (
<View style={styles.container}>
{props.label &&
<Text style={[styles.label].concat([props.error ? styles.error :
{}])}>
{props.label}
</Text>}
{props.icon &&
<View style={styles.iconContainer}>
{props.icon}
</View>}
<TextInput
editable={props.editable}
value={props.value}
onChangeText={props.onChangeText}
onFocus={props.onFocus}
style={[styles.input].concat([props.error ? styles.error : []])}
underlineColorAndroid="rgba(0,0,0,0)"
autoCorrect={false}
placeholder={props.placeholder}
placeholderTextColor={props.placeholderTextColor}
secureTextEntry={props.secureTextEntry}
multiline={props.multiline}
numberOfLines={props.numberOfLines}
fontStyle={props.fontStyle}
/>
{props.error &&
<Text style={styles.errorMessage}>
{props.error}
</Text>}
</View>
);
};
如何重写这些,使不变冲突错误不再存在
以下是错误的附加图像:
尝试将
{props.icon}
包装到文本组件中的视图组件内部,并在要呈现值时调用.toString()
打开{props.error.toString()}
和{props.icon.toString()}
更多信息,您能告诉我在这种情况下如何编写吗?因为仅仅添加toString()并不能解决我的问题:图标、错误和标签是什么类型的数据?问题是我不知道从哪一行代码或文件中查找它。我的应用程序很大。你知道吗?如果我最近引入了一个破坏代码的变更,那么我会有一个想法。但不是,这只是升级了expo客户端应用程序。我已经在这上面呆了5天多了。谢谢你的帮助。有没有关于如何调试并找出代码的哪个文件或行的想法?@ztadic91图标是react native material ui中的一个组件,错误是object literalstry的一个对象,它将{props.Icon}
包装在文本组件中的视图组件内部,并在要呈现值时调用.toString()
{props.error.toString()}
和{props.icon.toString()}
更多信息,您能告诉我在这种情况下如何编写吗?因为仅仅添加toString()并不能解决我的问题:图标、错误和标签是什么类型的数据?问题是我不知道从哪一行代码或文件中查找它。我的应用程序很大。你知道吗?如果我最近引入了一个破坏代码的变更,那么我会有一个想法。但不是,这只是升级了expo客户端应用程序。我已经在这上面呆了5天多了。谢谢你的帮助。您知道如何调试此代码并找出要查看的代码文件或代码行吗?@ztadic91图标是来自react native material ui的组件,错误是对象文字的对象
//props.error is true
// or if props.icon is true