• vuejs切换视图同时保持状态


    vuejs切换视图同时保持状态

    http://cn.vuejs.org/guide/components.html#动态组件

    动态组件

    多个组件可以使用同一个挂载点,然后动态地在它们之间切换。使用保留的 元素,动态地绑定到它的 is 特性:

    new Vue({
      el: 'body',
      data: {
        currentView: 'home'
      },
      components: {
        home: { /* ... */ },
        posts: { /* ... */ },
        archive: { /* ... */ }
      }
    })
    <component :is="currentView">
      <!-- 组件在 vm.currentview 变化时改变 -->
    </component>
    

    keep-alive

    如果把切换出去的组件保留在内存中,可以保留它的状态或避免重新渲染。为此可以添加一个 keep-alive 指令参数:

    <component :is="currentView" keep-alive>
      <!-- 非活动组件将被缓存 -->
    </component>
    
    

    路由

    对于单页应用,推荐使用官方库 vue-router。详细请查看它的文档。

    如果你只需要非常简单的路由逻辑,可以这么做,监听 hashchange 事件并使用动态组件:

    示例:

    <div id="app">
      <component :is="currentView"></component>
    </div>
    Vue.component('home', { /* ... */ })
    Vue.component('page1', { /* ... */ })
    var app = new Vue({
      el: '#app',
      data: {
        currentView: 'home'
      }
    })
    

    // 在路由处理器中切换页面
    app.currentView = 'page1'
    利用这种机制也可以非常容易地配合其它路由库,如 Page.js 或 Director。

  • 相关阅读:
    T-sql 中 truncate 、delete与drop操作数据库的区别
    poj -3070 Fibonacci (矩阵快速幂)
    给定一个0-1串,请找到一个尽可能长的子串,其中包含的0与1的个数相等。
    最长的循环节
    大组合数取模
    n个点中求任意两点组成斜率的最大值
    csu
    csu
    poj
    hdu
  • 原文地址:https://www.cnblogs.com/wancy86/p/5625006.html
Copyright © 2020-2023  润新知