keep-alive 不会始终返回最后一个状态

keep-alive doesnt return always the last state

提问人:navS02 提问时间:7/25/2023 最后编辑:navS02 更新时间:7/25/2023 访问量:47

问:

我有一个搜索表单,它分为两部分,第一部分由一个组件组成(其中包含用户必须编写搜索的输入)

  <!-- Search Form -->
      <keep-alive>
        <searchForm />
      </keep-alive>

第二部分是搜索模块的所有功能和其他功能。

根据我一直在查看的内容,即使用户在应用程序的另一部分,该标签也会使组件保持“活动”,但这部分对我有用,因为有时当我返回页面时,表单会使用最新数据进行编译(它有效,其他时候我返回并出现我之前输入的过滤器, 但这不是最后一个(它不起作用)。

vue.js vuejs2 vuejs3 vue-component keep-alive

评论

0赞 Tachibana Shin 7/25/2023
切勿将动态键用于元素保持活动状态
0赞 Tachibana Shin 7/25/2023
检查是否被删除本身必须是持久的,而不是删除的<keep-alive><keep-alive>
0赞 yoduh 7/26/2023
文档似乎很清楚 KeepAlive 仅用于包装动态组件,例如 其中“组件”不是占位符词,而是字面上的特殊元素。 value 确定在 KeepAlive 标记之间呈现哪个组件。当一个动态组件因另一个组件接管而变为非活动状态时,非活动组件的状态将由 KeepAlive 保存,以防它动态切换回来。这就是KeepAlive的目的。<component :is="activeComponent"><component>activeComponent
0赞 yoduh 7/26/2023
如果您的用例不是此特定场景,则需要手动找到一种方法来保存/恢复组件状态,例如使用本地存储或像 Pinia 这样的存储插件。

答: 暂无答案