export default function getRealRoute (fromRoute, toRoute) { if (!toRoute) { toRoute = fromRoute if (toRoute.indexOf('/') === 0) { return toRoute } const pages = getCurrentPages() if (pages.length) { fromRoute = pages[pages.length - 1].$page.route } else { fromRoute = '' } } else { if (toRoute.indexOf('/') === 0) { return toRoute } } if (toRoute.indexOf('./') === 0) { return getRealRoute(fromRoute, toRoute.substr(2)) } const toRouteArray = toRoute.split('/') const toRouteLength = toRouteArray.length let i = 0 for (; i < toRouteLength && toRouteArray[i] === '..'; i++) { // noop } toRouteArray.splice(0, i) toRoute = toRouteArray.join('/') const fromRouteArray = fromRoute.length > 0 ? fromRoute.split('/') : [] fromRouteArray.splice(fromRouteArray.length - i - 1, i + 1) return '/' + fromRouteArray.concat(toRouteArray).join('/') }