私の問題は、BountyDetailsScreenからLoyaltyScreenへnavigateBack()を呼びたいのですが、navigateBack()関数呼び出しは何の動作も引き起こさないということです。私は機能をログインすると、それは言う:私は気付かReact Native/Shoutem:navigateBack()not working
唯一のことは、navigationStackが空であること、です。私がnavigateTo
機能を使って同じことをしているとき、それは動作していますが、それから私はうんざりしたナビゲーションスタックを持っています。
私のLoyaltyScreen.jsではListViewを表示しています。これはRN ListView(shoutemからインポートされていない)です。
LoyaltyScreen.js
renderRow(bounty) {
return (
<ListBountiesView
key={bounty.id}
bounty={bounty}
onDetailPress={this.openDetailsScreen}
redeemBounty={this.redeemBounty}
/>
);
}
ListBountiesView.js
ListBountiesViewは、各リストビューの行をレンダリングし、行をクリックした際に詳細画面を開きます。 BountyDetailsScreenで
render() {
const { bounty } = this.props;
return (
<TouchableOpacity onPress={this.onDetailPress}>
{bounty.type == 0 ? this.renderInShopBounty() : this.renderContestBounty()}
<Divider styleName="line" />
</TouchableOpacity>
);
}
BountyDetailsScreen.js
私は、詳細情報を表示し、私はボタンを押したときに忠誠画面に)(navigateBackしたいと思います。
<Button styleName="full-width" onPress={() => this.onRedeemClick()}>
<Icon name="add-to-cart" />
<Text>Einlösen</Text>
</Button>
onRedeemClick() {
const { bounty, onRedeemPress } = this.props;
onRedeemPress(bounty);
navigateBack();
}
ありがとう!私は 'navigateBack()'関数を小道具から読むのを忘れていました –