Aurelia:路由器不会丢失状态
Aurelia: router without losing state
这是我的问题:
我通常有一个包含很多行的分页数据网格。当然,我希望能够编辑每一行的数据,但我对此有 2 个限制:
- 我需要编辑表单来替换页面内容(我不需要弹出窗口、模态对话框或侧面板)
- 我不想丢失数据网格的状态:也许我在数据网格中向下导航了 5 页,但我不想在第一页上重新加载。实际上,我宁愿不重新加载我已经拥有的数据(编辑后的数据无论如何都会由我的持久层自动更新)。
理想情况下,我希望有某种子路由器,但我不确定它如何满足第一个要求。否则,我可能会有一个默认情况下隐藏的组件,并在必要时将其自身定位在数据网格视图的顶部,但这感觉很老套,迫使我将所有内容都放在同一个模板中。如果我有几个不同的'full-screen panel'...
,我将不得不处理一堆这些组件
关于正确的实现方法有什么想法吗?
谢谢!
考虑使用路由器视图端口
http://aurelia.io/hub.html#/doc/article/aurelia/router/latest/router-configuration/9
不幸的是,我尝试了不同的解决方案都无济于事。我在 gitter 上与@Kukks 进行了长时间的讨论,我们一致认为使用子路由器和视口对于我的用例来说可能有点矫枉过正。
我回到了最初的想法,即使用绝对定位的组件以一种 "deck layout" 的方式隐藏前一个组件。这并不理想,因为我希望完全分离的视图和使用组件迫使我在主视图中声明它们,但它运行良好并且非常容易实现......
所以:不像我希望的那样干净,但更容易实现并且不那么复杂。
这是我的问题:
我通常有一个包含很多行的分页数据网格。当然,我希望能够编辑每一行的数据,但我对此有 2 个限制:
- 我需要编辑表单来替换页面内容(我不需要弹出窗口、模态对话框或侧面板)
- 我不想丢失数据网格的状态:也许我在数据网格中向下导航了 5 页,但我不想在第一页上重新加载。实际上,我宁愿不重新加载我已经拥有的数据(编辑后的数据无论如何都会由我的持久层自动更新)。
理想情况下,我希望有某种子路由器,但我不确定它如何满足第一个要求。否则,我可能会有一个默认情况下隐藏的组件,并在必要时将其自身定位在数据网格视图的顶部,但这感觉很老套,迫使我将所有内容都放在同一个模板中。如果我有几个不同的'full-screen panel'...
,我将不得不处理一堆这些组件关于正确的实现方法有什么想法吗?
谢谢!
考虑使用路由器视图端口 http://aurelia.io/hub.html#/doc/article/aurelia/router/latest/router-configuration/9
不幸的是,我尝试了不同的解决方案都无济于事。我在 gitter 上与@Kukks 进行了长时间的讨论,我们一致认为使用子路由器和视口对于我的用例来说可能有点矫枉过正。
我回到了最初的想法,即使用绝对定位的组件以一种 "deck layout" 的方式隐藏前一个组件。这并不理想,因为我希望完全分离的视图和使用组件迫使我在主视图中声明它们,但它运行良好并且非常容易实现...... 所以:不像我希望的那样干净,但更容易实现并且不那么复杂。