TypeError:未定义不是一个对象(评估'theme.spacing[radius]')
2022-05-13
2781
我正在使用 React Native Elements 库来构建 UI。我正在尝试创建一个带有图标的按钮。我最初只是从网站上复制了此代码,未做任何更改,以查看按钮是否有效。
import { Button } from "@rneui/themed";
<Button
title="Basic Button"
buttonStyle={{
backgroundColor: 'rgba(78, 116, 289, 1)',
borderRadius: 3,
}}
containerStyle={{
width: 200,
marginHorizontal: 50,
marginVertical: 10,
}}
/>
我在应用程序中不断收到此错误
TypeError: undefined is not an object (evaluating 'theme.spacing[radius]')
该错误来自 ui.library 附带的 Button.js 内部。我不确定是什么原因造成的。我设法使用库中的输入组件而没有任何问题,因此我认为我正确安装了它。那么是什么原因导致了这个按钮问题?
3个回答
从
@rneui/base
导入
Button
模块,而不是从
@rneui/themed
导入
touri
2022-05-14
为什么不使用 touchOpacity 和 icon 创建按钮 这比使用库更容易
TNTC
2022-05-13
我也遇到过这个问题。您可以通过将 react-native-elements (@rneui) 中的 ThemeProvider 组件包装在应用程序的根目录中来解决此问题。例如;
<ThemeProvider theme={myTheme}>
<Button title="My Button" />
</ThemeProvider>
react-native-elements 的官方迁移指南: https://reactnativeelements.com/docs/migration_guide
Bart
2022-05-17