私は、特定のアイコンの可用性に応じて、さまざまなタイプの反応ネイティブ ベクター アイコン (Material と FontAwesome) を使用しています。アプリ全体でアイコンの使用をラップする共通コンポーネントを作成したかったのです。これまでのところ、私は持っています:
import React from 'react';
import Icon from "react-native-vector-icons/FontAwesome";
import {theme} from "../../../styles/style";
/**
* Common reusable icon component
* @param props
* @returns {*}
*/
const icon = (props) => {
return (
<Icon
size={theme.SIZE_ICON}
color={theme.BACKGROUND_ICON_COLOR}
{...props}
style={props.style}/>
);
};
export default icon;
これは FontAwesome でのみ機能します。必要に応じてマテリアル アイコンを使用できるように、prop パラメータなどに基づいて動的にするにはどうすればよいですか? 注: IconMaterial、IconFontAwesome など、タイプごとに個別のコンポーネントを作成したくありません。タイプに関係なく、コンポーネントの名前を Icon にしたいと考えています。それは可能ですか?