Resolve not triggering

For some reason, resolve is not triggering in this case. I can confirm that localStorage.firstStart is being set and “Not first start.” is being logged to the console.

Any help would be much appreciated!

{
	path: '/',
	async(routeTo, routeFrom, resolve, reject) {
      if( typeof localStorage.uid === 'undefined' || localStorage.uid === null ){
            resolve({ url: './pages/login.html' }); // I WORK FINE
      } else {
		if (localStorage.firstStart){
			console.log("Not first start.");
			resolve({ url: './pages/home.html' });   // I AM NOT RUNNING
		} else {
			console.log("First Start.");
			resolve({ url: './pages/new-student.html' });  // I WORK FINE
		}
      }
    }
  }

Так можно делать? Я всегда делаю через getItem()

Give more details, what is in routeTo and routeFrom when it is not working? How do you call this page, the workflow?

I am really having no luck getting resolves to work.

Having the same issue here now:

{
        path: '/payment/',
	url: './pages/payment.html',
	beforeEnter:function(routeTo, routeFrom, resolve, reject){ 
			
		if(localStorage["customerID"]){ 
			console.log("Has CST ID");
		        resolve();	
		} else {
			console.log("Doesnt have CST ID");
			console.log(routeTo);
			console.log(routeFrom);
			resolve("/new-card/");
		}
	}
},
{
    path: '/new-card/',
	url: './pages/new-card.html'
}

No errors are being thrown, console is logging "Doesnt have CST ID".

routeTo and routeFrom are both correct.

/payment/ route is being triggered by an anchor link on the cart page, routeFrom shows /cart/ and routeTo shows /payment/

routeTo:

{
  "query": {},
  "params": {},
  "url": "/payment/",
  "path": "/payment/",
  "route": {
    "path": "/payment/",
    "url": "./pages/payment.html",
    "on": {}
  }
}

routeFrom:

{
  "query": {},
  "params": {},
  "url": "/cart/",
  "path": "/cart/",
  "route": {
    "path": "/cart/",
    "url": "./pages/cart.html",
    "on": {}
  }
}

В async resolve принимает url, а не path

В beforeEnter /beforeLeave resolve ничего не принимает, он не меняет url (для этого используйте redirect)