Как Shoutem v5 справляется с многоуровневой навигацией?
Примеры не показывают, как сделать ссылку с одного экрана на другой. Возможно ли это с помощью веб-интерфейса Shoutem v5?
1 ответ
Решение
Проверьте здесь в документации Shoutem для navigateTo
Redux Action Creator. С помощью этой функции легко перейти на другой экран. Вы просто называете это и передаете это экран name
и реквизит для экрана. Если вы хотите открыть экран из текущего расширения, используйте ext
функция от app/extension.js
файл.
Вот файл экрана:
import React, {
Component
} from 'react';
import {
TouchableOpacity,
Text
} from 'react-native';
import { navigateTo } from '@shoutem/core/navigation';
import { ext } from '../extension';
import { connect } from 'react-redux';
class Screen extends Component {
// method inside Screen component
render() {
const { navigateTo } = this.props;
return (
<TouchableOpacity onPress={() => navigateTo({
screen: ext('AnotherScreen'),
props: { }
})}>
<Text>Click here!</Text>
</TouchableOpacity>
);
}
}
// connect screen to redux store
export default connect(
undefined,
{ navigateTo }
)(Screen)
Таким образом, вы также можете подключить 2 разных расширения. Поскольку расширения представляют отдельные функции, все экраны уже связаны внутри. Вот почему вы не можете сделать это вручную внутри компоновщика, но сделать это в коде так же просто, как и в коде выше.