function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
kazuki tsunekazuki tsune 

コミュニティログイン後にパスワード変更画面に遷移させる方法について

お世話になっております。

ログイン後のカスタマーコミュニティ内のページからユーザがパスワードをリセットできるように
force:navigatetourlを使用してforgot passwordページへ遷移させようとしています。
相対パスで表記すれば開発環境でも本番環境でもURLを変更する必要がないので良いと思っています。

$A.get("e.force:navigateToURL").setParams({"url": "/login/ForgotPassword"}).fire();
        var urlEvent = $A.get("e.force:navigateToURL");
        urlEvent.setParams({
        "url": "/login/ForgotPassword",
        "isredirect": "false"
        });
        urlEvent.fire();

現在上記のように設定しており、ボタン押下時に画面が遷移するように記述してみました。
しかし、URLは書き換わるのですが、画面自体は遷移せず「Page not available
Maybe the page was deleted, the URL is incorrect, or something else went wrong. 
If you know the page exists but you still can’t get to it, please ask the community administrator for help.」
と表示されてしまいます。
この状態で更新ボタンを押せば画面が変わるのですが、ボタン押下時に変更をさせたいです。

良い方法はありませんか???

よろしくお願いします。
kazuki tsunekazuki tsune
プログラムは下記が正しいです。
    Reset : function (component) {
          var urlEvent = $A.get("e.force:navigateToURL");
          urlEvent.setParams({
          "url": "/login/ForgotPassword",
          "isredirect": false
        });
        urlEvent.fire();
    }

オブジェクトだと遷移できるけど、ログイン系のページは無理そうなのかな??
window.setTimeoutと$A.getCallbackを使って強制的に更新させても遷移できずに同じ画面が表示されました
skosakaskosaka
対処法ではなく、私もうまく行かなかった、というコメントで恐縮ですが…、
・ApexでNetwork.getLoginUrl() と "/ForgotPassword" の組み合わせでも同様の挙動でした。
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_network.htm
・コミュニティビルダーのナビゲーションメニューからも指定できないため、ログイン回りのページは扱いが別なのかもしれません。
・私の設定からパスワード変更していただくか、カスタムコミュニティページを作成するか(こちらはnavigateToUrl+相対パスはOKですね)、でしょうか。。