coo*_*s22 1 react-native react-navigation
关于反应导航 setParams() 的问题。我在 Reactiflux 上问过,但没有人回答。我正在尝试在函数组件中以编程方式设置标题。
从另一个 Stack Overflow 线程,追溯更新静态标题,像这样,工作:
const Comp = props => { ... };
Comp.navigationOptions = ({ navigation }) => ({
title: 'Static Title'
});
Run Code Online (Sandbox Code Playgroud)
但是我需要从组件内部访问组件状态,这不起作用:
const Comp =({ navigation }) => {
const [title, setTitle] = useState('');
useEffect(() => {
navigation.setParams({ title });
}, [title]);
return ( ... );
}
Run Code Online (Sandbox Code Playgroud)
如果 setParams() 是错误的方法,请赐教
编辑:补充一点,当我console.log(navigation)看到它正在更改navigation.state.params.title为正确的字符串时,但它没有显示为标题。
您需要获取标题参数并将其应用于标题:
Comp.navigationOptions = ({ navigation }) => ({
title: navigation.getParam('title', /* your default title */)
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3100 次 |
| 最近记录: |