详解VueJs异步动态加载块


Posted in Javascript onMarch 09, 2017

首先定义组件为异步加载

define(['jquery','vue'],function($,Vue){ 
  Vue.component('comp1',function(resolve){ 
    require(['component/comp1'],resolve); 
  }); 
  Vue.component('comp2',function(resolve){ 
    require(['component/comp2'],resolve); 
  }); 
  var b = new Vue({ 
    el:"#app", 
    data:{ 
      currentView:'comp1' 
    }, 
    methods:{ 
      toggleView:function(){ 
        console.log(this.currentView); 
        this.currentView = this.currentView=='comp1'?'comp2':'comp1'; 
      } 
    } 
  }); 
})

具体可以参考vuejs的异步组件和动态组件。然后是html里面的代码

<div id="app"> 
    <keep-alive><!-- 使用keep-alive可以让动态被切出去的组件继续保存在内存中(只是隐藏看不到),却回来之后会继续之前的状态和数据 --> 
    <component v-bind:is="currentView"></component> 
    </keep-alive> 
    <button type="button" v-on:click="toggleView">切换view</button> 
  </div>

这种结构的好处是,页面初始化加载的时候只会加载需要的那个组件相关的内容,没切换到的那个组件不加载,使页面加载的速度加快。同时,每个组件加载过一次之后切换出再切回来不会重复加载相关内容和重复执行渲染

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Extjs入门之动态加载树代码
Apr 09 Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
Sep 10 Javascript
探讨javascript是不是面向对象的语言
Nov 21 Javascript
jquery淡入淡出效果简单实例
Jan 14 Javascript
JavaScript实现经典排序算法之选择排序
Dec 28 Javascript
H5图片压缩与上传实例
Apr 21 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
Jun 16 Javascript
浅谈基于Vue.js的移动组件库cube-ui
Dec 20 Javascript
Vue封装Swiper实现图片轮播效果
Feb 06 Javascript
vue interceptor 使用教程实例详解
Sep 13 Javascript
vue实现条件叠加搜索的解决方法
May 28 Javascript
前端canvas中物体边框和控制点的实现示例
Aug 05 Javascript
微信小程序 设置启动页面的两种方法
Mar 09 #Javascript
js实现登录框鼠标拖拽效果
Mar 09 #Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
Mar 09 #Javascript
基于vue实现分页/翻页组件paginator示例
Mar 09 #Javascript
vue.js利用Object.defineProperty实现双向绑定
Mar 09 #Javascript
javascript遍历json对象的key和任意js对象属性实例
Mar 09 #Javascript
微信小程序 五星评价功能的实现
Mar 09 #Javascript
You might like
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
详解WordPress中分类函数wp_list_categories的使用
2016/01/04 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
IE/FireFox具备兼容性的拖动代码
2007/08/13 Javascript
微信公众号 摇一摇周边功能开发
2016/12/08 Javascript
VueJs路由跳转——vue-router的使用详解
2017/01/10 Javascript
Vue关于数据绑定出错解决办法
2017/05/15 Javascript
JS实现无缝循环marquee滚动效果
2017/05/22 Javascript
详解在Angular项目中添加插件ng-bootstrap
2017/07/04 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
Bootstrap 树控件使用经验分享(图文解说)
2017/11/06 Javascript
使用vue实现grid-layout功能实例代码
2018/01/05 Javascript
node-red File读取好保存实例讲解
2019/09/11 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
微信小程序入门之绘制时钟
2020/10/22 Javascript
[50:50]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.20
2020/12/23 DOTA
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
python的numpy模块安装不成功简单解决方法总结
2017/12/23 Python
python基础教程项目三之万能的XML
2018/04/02 Python
python3使用matplotlib绘制条形图
2020/03/25 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
python3 下载网络图片代码实例
2019/08/27 Python
纯CSS实现预加载动画效果
2017/09/06 HTML / CSS
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
中间件分为哪几类
2012/03/14 面试题
美工的岗位职责
2013/11/14 职场文书
简短证婚人证婚词
2014/01/09 职场文书
表扬信格式
2014/01/12 职场文书
网管求职信
2014/03/03 职场文书
关于读书的演讲稿600字
2014/08/27 职场文书
团员个人总结
2015/02/26 职场文书
2015年重阳节活动主持词
2015/07/30 职场文书
详解MySQL数据库千万级数据查询和存储
2021/05/18 MySQL
详解redis分布式锁的这些坑
2021/05/19 Redis
JavaScript数组 几个常用方法总结
2021/11/11 Javascript