我在php页面中嵌入了一个棱角的表单。当有角的形状被发送出去时,它将导航到某个页面。
在实践中,当角形式完成后,将使用: router.navigate或router.navigateByUrl对特定的路线。这些路线在php中有相同的页面。
示例:
成角
...
this.router.navigate([done], { queryParams: { anyKey: 'anyValue' }});
...
in php
...
done.php
<?php
echo('I got it');
?>
但在现实中,我们知道done.php永远不会说“我明白了”,因为done.php从来没有被执行过。
问题是php没有检测到前端路由发生变化。我明白这是有道理的,但有没有办法让php知道前端路由已经改变了?
谢谢你的帮助。
发布于 2022-08-05 17:33:03
当您使用一个前端框架(如react、角化、vue等)时,前端和后端应该只通过API相互通信,因此如果您希望php收集您刚刚提交的表单数据,那么您应该通过API将这些数据发送给php,并且在收到php的响应之后,您可以将用户路由到完成的路由。
但是如果没有API,php将永远不知道用户端发生了什么,因为它都是通过JS处理的。
发布于 2022-08-05 17:56:38
是的,最后我想出了一个很老的解决方案。
window.location.href= 'some where' ;
这解决了我的问题,因为我的老板想让gtag转换速率跟踪代码在php中“必须”运行,并且他不相信能够运行它,所以我不得不找到一个绕过它的方法。
我欢迎任何答案,即使它已经用古老的方法解决了。
https://stackoverflow.com/questions/73256390
复制相似问题