反应本机:UIkitten 图标类型错误:未定义不是对象(评估"iconsPack.name")



我试图在UI Kitten中使用Eva图标,但最终遇到了这个错误,我对这个问题深入思考了一段时间,对React和Reavt Native来说是个新手,如果有人能帮助我,我会很高兴的(:

render()
const FacebookIcon = (props) => (
<Icon name='facebook' {...props} />
);
return(
<Input
value={this.state.id}
label="FB ID"
size="medium"
placeholder="Enter your fb_id"
onChangeText={(enteredText) => this.setState({ fbId: enteredText })}
accessoryLeft={FacebookIcon}
/>

)

首先,运行以下命令:

npm i @ui-kitten/eva-icons react-native-svg

然后使用IconRegister注册图标包。

正如文档中所述

import React from 'react';
import * as eva from '@eva-design/eva';
import { ApplicationProvider, IconRegistry, Layout, Text } from '@ui-kitten/components';
import { EvaIconsPack } from '@ui-kitten/eva-icons';
const HomeScreen = () => (
<Layout style={{flex: 1, justifyContent: 'center', alignItems: 'center'}}>
<Text category='h1'>HOME</Text>
</Layout>
);
export default () => (
<>
<IconRegistry icons={EvaIconsPack} />
<ApplicationProvider {...eva} theme={eva.light}>
<HomeScreen />
</ApplicationProvider>
</>
);

最新更新