如何根据忘记密码的电子邮件设置动态状态

how to set dynamic state based on forgot password email

我发送以下 url 给忘记密码的用户:

http://myapp.client/home/#/reset-password/cykdufapPsD8LJCJBA1EC23C-C1BD-4411-1775-38577DF8FDF3I6U6TfKDXOfN11A1

如何获取 auth(/reset-password/ 之后的字符串)值并在 state 中使用它?

在我的 app.js 文件中,我希望 url 的状态是动态的,并将用户重定向到重置密码页面,如下所示:

$stateProvider.state('reset-password', {
    url: '/reset-password/:token',
    templateUrl: '/home/login/views/prtl_resetPassword.html'
};
$urlRouterProvider.otherwise('/login');

当我加载页面时,我被重定向到登录页面。我可以理解未分配发送给用户 eamil 的 token。最好的解决方案是什么?

来自 URL 片段 :token 的值用于填充 $stateParams,可以将其注入控制器。

您可以为 reset-password 状态创建一个控制器。在控制器内部,您可以从 $stateParams 获取 token 值并将其传递给 login 状态 $state.go().