【发布时间】:2017-09-03 13:02:46
【问题描述】:
我有一个带有单例视图模型的 Aurelia 应用程序。该视图类似于文件浏览器,左侧是树视图(自定义元素),右侧是列表视图。视图模型activationStrategy 是invokeLifecycle,列表视图是根据路由参数填充的。展开节点时,树视图会填充 AJAX 调用。树节点也是一个自定义元素。树视图是完全自定义的,不使用任何 3rd 方插件。
当用户导航到另一条路线,然后又回到同一条路线时,视图模型将被保留,因为它是一个单例。但是,树视图不是因为不支持作为单例的自定义元素。
我理解不支持单例自定义元素的原因。但是,我想知道在导航回同一条路线时以某种方式创建“静态”树视图的最佳方法是什么。到目前为止,我唯一想到的是将完整(扩展)的树结构保持在注入共享状态。然而,这对我来说似乎效率低下,因为树视图必须无缘无故地再次呈现,并且它使我的代码不必要地复杂化,添加了用于创建树结构的类和逻辑,而树结构已经隐含在自定义元素中。
感谢任何输入。
【问题讨论】:
-
我不相信有办法在离开和回来后不再呈现自定义元素。当您离开页面时,元素将被分离。如果您回来,它们会再次连接。
标签: javascript typescript aurelia