gpt4 book ai didi

javascript - React( native )导航切换搜索栏

转载 作者:太空宇宙 更新时间:2023-11-04 15:31:43 24 4
gpt4 key购买 nike

几天来一直在努力尝试找出如何在 react 导航中切换搜索栏。

我的方法是

static navigationOptions = ({navigation}) => {
return {
title: 'Header Title',
headerLeft: (
{navigation.params.state.search ? <searchfield query={text => navigation.setParams(text)} > : <settings>}
),
headerRight: (
<TouchableOpacity style={{ marginHorizontal: 10 }}>
<Icon name="search" size={28} color="#5751D9" />
</TouchableOpacity>
)
}}

enter image description here

然后我想向 headerLeft 添加一些逻辑,以便它返回齿轮图标按钮组件或 TextInput 组件(计划将文本传递给 setParams 并使用它作为标题下方列表组件中的过滤器),但当我不导航到它时,我似乎无法弄清楚如何将状态或状态处理程序作为 Prop 传递。这是初始屏幕。

最佳答案

将一个函数挂接到 componentDidMount 内的 setParams 上,这将在 searchedText 更改时调用,使用此函数来 setState。

componentDidMount() {
this.props.navigation.setParams({onSearchText: (searchedText) => this.onSearchText(searchedText)});
}
onSearchText(searchedText) {
//update your list using this searchedText
this.setState({searchedText})
}

现在当 searchedText 发生变化时调用函数 onSearchText(),

static navigationOptions = ({navigation}) => {
return {
title: 'Header Title',
headerLeft: (
{navigation.params.state.search ? <searchfield query={text => onSearchText(text)} > : <settings>}
),
headerRight: (
<TouchableOpacity style={{ marginHorizontal: 10 }}>
<Icon name="search" size={28} color="#5751D9" />
</TouchableOpacity>
)
}}

希望对你有帮助...

关于javascript - React( native )导航切换搜索栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44728479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com