Передать параметры в коллекции FireStore - PullRequest
1 голос
/ 21 июня 2019

Я хочу знать, возможно ли передать params как busstop в this.ref = firebase.firestore().collection(params) для доступа к другой коллекции при переходе с одной страницы на другую.Если нет, то как мне добиться этого?

page1 - у пользователя будут варианты нажатия, чтобы получить данные из firebase firestore.

Page1.js

onPress () = > this.props.navigation.navigate('page2',{locations: 'busstops' })


onPress () = > this.props.navigation.navigate('page2',{locations: 'taxis' })

page2

import {View,Text} from 'react-native';

const collectionid = this.props.navigation.state.params.location
const location = collectionid ? params.location : null;


export default class HomeDetail extends Component {
    constructor(props) {
        super(props);
        this.ref = firebase.firestore().collection(location);

        this.state = {

            },

        };
    }

1 Ответ

2 голосов
/ 21 июня 2019

Если я правильно понимаю ваш вопрос, это вопрос react-navigation, а не вопрос пожарной части.Пожалуйста, проверьте эту ссылку:

https://reactnavigation.org/docs/en/navigation-prop.html#getparam-get-a-specific-param-value-with-a-fallback

Из документов:

В прошлом вы могли столкнуться с ужасным сценарием доступа к параметру, когда параметрыне определеноВместо прямого доступа к параметру вы можете вместо этого вызвать getParam.

Они изменили его с:

const { location } = this.props.navigation.state.params.location;

на

const location = this.props.navigation.getParam(paramName, defaultValue);

Поэтому попробуйте использовать это в своем коде:

const collectionid = this.props.navigation.getParam('location');

...