2017-02-13 8 views
0

ユーザーがこのリンクをクリックする例えば:account/organisations/organisation1/news/21

私は、その特定のページへのスタートページ(news/today)から$location.path(url)を介してユーザをリダイレクトします。ユーザーは今、彼は戻ってnews/todayになる背中のボタンを押したが、account/organisations/organisation1/news/

URLを分割すると「偽の歴史が動作しないために国をプッシュする私の試みにリダイレクトする必要がある場合は、次の

var url = "account/organisations/Vereinsplaner/news/21".split("/"); 
var curUrl = ""; 
var part; 
while(part = url.shift()){ 
    curUrl = curUrl+"/"+part; 

    $location.url(curUrl); 
    $location.replace(); 
    $window.history.pushState(null, 'any', $location.absUrl()); 
} 

背景:Ion AppでPushNotificationによってこのリンクを取得します。ユーザーがそれをクリックすると、彼はサブページにリダイレクトされますが、履歴は利用できないため、戻ることはできません。

+0

...好ましい方法は$ state.go(ですので、それはリダイレクトする前の状態を登録するために)UI-ルータを使用IONICに代わりに$場所の原因を$state.go()を使用しようとはしています$ locationの代わりに$ state.go()を使用しようとしましたか? –

+0

http://stackoverflow.com/questions/14070285/how-to-implement-history-back-in-angular-js? –

+0

@federicoscamuzziありがとうございました。働いています。返された約束とともに '$ state.go()'をネストできます。まさに私が探していたもの。私はそれが最も美しい解決策であるかどうかわかりませんが、それは動作します;) – Mazz

答えて

1

あなたは、イオンを使用している場合