我想根据路由在堆栈导航器配置中设置默认参数,以便我可以重用单个组件并将所有值保存在同一个位置。
我一直在尝试遵循文档并在堆栈导航器配置中实现默认参数,但它们似乎没有通过。
const SuggestionsStack = createStackNavigator(
{
Suggestions: {
screen: SuggestionsScreen,
params: {
linkUrl: `${UrlConstants.REST_URL}`,
screenType: `${SuggestionsType.ALL_SUGGESTIONS}`,
},
},
Suggestion: SuggestionScreen,
SuggestionCreate: SuggestionCreateScreen,
},
);
但是,当我尝试从屏幕访问参数时:
console.log(this.props.navigation.state);
控制台输出:
[16:12:43] Object {
[16:12:43] "key": "id-1546956760520-1",
[16:12:43] "params": Object {
[16:12:43] "handleCleanAsync": undefined,
[16:12:43] "refreshList": undefined,
[16:12:43] },
[16:12:43] "routeName": "Suggestions",
[16:12:43] }
配置中说明的参数无处可寻。我究竟做错了什么?
this.props.navigation.state
用于检查当前屏幕中的整个可用输出,正如我们所见,配置中指定的“linkUrl”和“screenType”参数不可用。