我正在使用react-native-i18next
来翻译我的应用程序中的多个组件,更具体地说,这个组件就是一个例子:
export const Header = translate('shareWith')(props =>
(<View style={styles.header}>
<TouchableHighlight onPress={props.onCancel}>
<Text style={styles.headerAction}>
{props.t('app:cancel')}
</Text>
</TouchableHighlight>
<Text style={styles.screenTitle}>
{props.t('screenTitle')}
</Text>
<TouchableHighlight onPress={props.onDone}>
<Text style={styles.headerAction}>
{props.t('app:done')}
</Text>
</TouchableHighlight>
</View>));
我正在尝试测试我无法呈现组件的Header
组件。
根据react-native-i18next
文档,它建议模拟或添加t
道具。两者都不奏效。
丙
<Header {...props} t={() => {}} />
素:
jest.mock('react-i18next', () => ({
// this mock makes sure any components using the translate HoC receive the t function as a prop
translate: () => Component => props => <Component t={() => ''} {...props} />,
}));