我正在开发一个具有对表进行分页/排序的现有应用程序。
因此,假设我在网址为的页面上:http://www.brilliantapplication.com/table;sort=name,desc
现在我在此页面上有一个按钮,它将通过路由调用模式。如果您没有排序/分页,则此方法有效。但是,如果存在排序/分页,则不会,因为URL类似于:http://www.brilliantapplication.com/table;sort=name,desc/create_modal
如何正确处理?1 /请问有什么方法可以存储查询参数,调用http://www.brilliantapplication.com/table/create_modal作为纯净网址当关闭模态时,返回http://www.brilliantapplication.com/table;sort=name,desc也许使用router.navigate的state属性传递数据?2 /不用路由就可以打开模态更好吗?3 /做一些路由技巧,使http://www.brilliantapplication.com/table;sort=name,desc/create_modal被接受并起作用
欢呼声
我认为这里的选择取决于您是否希望能够直接使用URL来引用模式。
如果需要,那么我建议将您的网址改成类似的内容
http://www.yoursite.com/table?sort=name,desc
[当您想将它们引用到模式时,您也可以将参数传递给另一个URL,如下所示:
http://www.yoursite.com/table/modal?sort=name,desc
如果想将参数返回到基本/ table页面,可以用两种方法解决参数保存问题。如果先前的URL是模式链接,则可以侦听路由器的更改并复制参数,也可以将html中的routerLink更改为表格页面,然后将当前参数放在此处。
如果不需要直接引用模式,最好将信息存储在服务中或将其保存在组件本身中,因为模式可以直接加载在组件顶部。