В документации для всплывающего меню реакции на собственное всплывающее меню упоминается, как создавать параметры меню с галочкой.
const CheckedOption = (реквизит) => ( )
Я хочу создать пункты меню с пользовательскими значками. У меня нет значения Unicode для этих значков. Я создал собственный компонент MenuOptionWithIcon и обернул значок и пункт меню внутри представления.
export class MenuOptionWithIcon
extends React.Component<IMenuOptionProps, {}> {
public static defaultProps: Partial<IMenuOptionProps> = {
disabled: false,
};
public render() {
return (
<View style={PopupMenuStyleSheet.menuOptionWithIcon}>
{this.props.icon}
<MenuOption
{...this.props}
text={this.props.text}
onSelect={this.props.onSelect}
disabled={this.props.disabled}
/>
</View>
);
}
}
Но теперь я не могу применить customStyles к этим параметрам. Я хочу увеличить заполнение каждого из этих параметров, чтобы увеличить цель касания. Это правильный способ создать пользовательский пункт меню со значком? Или есть способ получить значения юникода для нужных мне значков? Спасибо!
ИЗМЕНИТЬ:
Основываясь на предложении в ответе ниже, я сделал следующее, но теперь вижу только текст в своем меню. Я не вижу отображаемого значка. onSelect работает, текст отображается, но значок не отображается.
const IconOption = (props) => (
<MenuOption {...props}>
<Icon name={props.iconName} size={30} />
{props.children}
</MenuOption>
);
<MenuOptions customStyles={MenuOptionStyles}>
<IconOption
iconName='md-bookmark'
onSelect={this.onSelectSave.bind(this)}
text={MenuOptionStrings.Save}
/>
</MenuOptions>