Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 以角度7正确显示模态屏幕_Asp.net_Typescript_Angular7_Router - Fatal编程技术网

Asp.net 以角度7正确显示模态屏幕

Asp.net 以角度7正确显示模态屏幕,asp.net,typescript,angular7,router,Asp.net,Typescript,Angular7,Router,我有一个ASP.NETCore2.0项目,使用Angular7材质 我已经正确地在Angular中实现了忘记密码功能,当调用该功能时,将提示用户输入他们的电子邮件地址。这将向他们发送一个密码重置电子邮件链接。一旦点击了链接,他们就会被重定向到Angular的页面,这就是我的问题所在。我希望实现的是将用户重定向到模式屏幕而不是页面 .NET 到目前为止,我尝试将出口指定为路由内的模式,但没有成功 {path:'reset',outlet:'modal',component:ResetCompone

我有一个ASP.NETCore2.0项目,使用Angular7材质

我已经正确地在Angular中实现了
忘记密码
功能,当调用该功能时,将提示用户输入他们的电子邮件地址。这将向他们发送一个密码重置电子邮件链接。一旦点击了链接,他们就会被重定向到Angular的页面,这就是我的问题所在。我希望实现的是将用户重定向到模式屏幕而不是页面

.NET

到目前为止,我尝试将
出口
指定为路由内的模式,但没有成功

{path:'reset',outlet:'modal',component:ResetComponent}

总结如下: 用户单击“忘记密码”=>然后请求转到服务器端,生成一个令牌=>令牌,并将用户电子邮件发送回Angular modal screen=>用户输入密码并确认密码


我该怎么办呢?

你的问题真的不清楚。你能发布你的代码吗?不要在路由路径中添加重置,只需让按钮发送HTTP调用,这不会重定向,当服务器响应时,您会打开一个模式屏幕。这是如何工作的?从用户单击电子邮件中的链接开始,他们将被引导到一个新页面。您认为重置需要路由到一个页面,然后在
ngOnInit()
@SWilko中打开一个
Modal
?你能给我举个例子吗?
       [HttpGet("reset")]
        public IActionResult Reset(string email, string token)
        {
            if (token == null)
            {
                return BadRequest();
            }

            if (token != null)
            {
                //sends them to angular application with email and token
                return Redirect("http://localhost:4200/resetPassword" + $"?email={email}&token={token}");
            }
            else
            {
                return BadRequest();
            }
        }

This is what the link from the server side would look like => 
localhost:4200/reset?emailaddress=samsmith@gmail.com?token=fdsajfdfadsafdasfdsafdsafdasfdsaf