React Native使用UI Kitten的Application Provider触发Object.keys(params)未定义报错
报错修复方案
这个报错是UI Kitten的ApplicationProvider组件读取入参时,目标参数为undefined导致的,按以下步骤排查即可解决:
- 检查必填参数是否完整
ApplicationProvider必须同时传入设计规则映射与主题配置两个参数,缺少任一参数都会触发该报错。正确使用示例如下:
首先安装匹配版本的依赖:
根组件中正确包裹业务代码:npm install @ui-kitten/components @eva-design/evaimport * as eva from '@eva-design/eva'; import { ApplicationProvider } from '@ui-kitten/components'; const App = () => { return ( <ApplicationProvider {...eva} theme={eva.light} > {/* 项目业务代码 */} </ApplicationProvider> ) } export default App; - 检查依赖版本一致性
@ui-kitten/components和@eva-design/eva的大版本号必须完全匹配,比如两者均为5.x版本,跨版本混用会导致参数结构不兼容,触发读取异常。 - 检查自定义主题是否正常赋值
如果你没有使用eva预设的light/dark主题,而是传入了自定义主题,请确认自定义主题对象已正确定义、导入,不存在赋值为undefined的情况。
内容的提问来源于stack exchange,提问作者bamz96
相关产品推荐
相关产品推荐

