на первой странице создайте свою функцию.
myMethod() {
//function i want to call in second page
}
на первой странице при переходе на вторую страницу (в моем случае, когда пользователь нажимает кнопку) передайте функцию в качестве параметра, как показано ниже:
onPress={() => this.props.navigation.navigate('SecondPage', {
rerenderOutputTitles: () => this.myMethod(),
})}
, затем на второй странице вызовите этот метод где вы хотите, как показано ниже:
this.props.navigation.state.params.rerenderOutputTitles();
Есть функция realpath()
C, которая сделает эту работу, но я не вижу ничего доступного в командной строке. Вот быстрая и грязная замена:
#!/bin/bash
realpath() {
[[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
}
realpath "$0"
Это печатает путь дословно, если он начинается с /
. В противном случае это должен быть относительный путь, поэтому он добавляет $PWD
впереди. Часть #./
отделяет ./
от передней части $1
.
Мне нравится это:
#!/usr/bin/env bash
function realpath() {
local _X="$PWD"
local _LNK=$1
cd "$(dirname " Мне нравится это:
[110]LNK")"
if [ -h " Мне нравится это:
[110]LNK" ]; then
_LNK="$(readlink " Мне нравится это:
[110]LNK")"
cd "$(dirname " Мне нравится это:
[110]LNK")"
fi
echo "$PWD/$(basename " Мне нравится это:
[110]LNK")"
cd " Мне нравится это:
[110]X"
}