详解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 相关文章推荐
IE与firefox之jquery用法区别
Oct 03 Javascript
基于jquery实现漂亮的动态信息提示效果
Aug 02 Javascript
html a标签-超链接中confirm方法使用介绍
Jan 04 Javascript
select标签模拟/美化方法采用JS外挂式插件
Apr 01 Javascript
jquery原创弹出层折叠效果点击折叠弹出一个层
Mar 12 Javascript
简述AngularJS的控制器的使用
Jun 16 Javascript
JavaScript实现将文本框的值插入指定位置的方法
Aug 13 Javascript
JavaScript 性能优化小结
Oct 12 Javascript
快速学习AngularJs HTTP响应拦截器
Dec 31 Javascript
jQuery中数据缓存$.data的用法及源码完全解析
Apr 29 Javascript
Angular 常用指令实例总结整理
Dec 13 Javascript
node省市区三级数据性能测评实例分析
Nov 06 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新手上路(十)
2006/10/09 PHP
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
2013/04/08 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
2017/09/15 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
js面向对象编程之如何实现方法重载
2014/07/02 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
2016/04/01 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
PassWord输入框代码分享
2016/06/07 Javascript
Angularjs 实现分页功能及示例代码
2016/09/14 Javascript
详解AngularJs中$resource和restfu服务端数据交互
2016/09/21 Javascript
原生js实现查询天气小应用
2016/12/09 Javascript
Angular实现表单验证功能
2017/11/13 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
js中值引用和地址引用实例分析
2019/06/21 Javascript
Jquery 动态添加元素并添加点击事件实现过程解析
2019/10/12 jQuery
ES6 Promise对象概念及用法实例详解
2019/10/15 Javascript
浅谈vue的第一个commit分析
2020/06/08 Javascript
python常见数制转换实例分析
2015/05/09 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
python在非root权限下的安装方法
2018/01/23 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
python的命名规则知识点总结
2019/10/04 Python
IE下实现类似CSS3 text-shadow文字阴影的几种方法
2011/05/11 HTML / CSS
三星加拿大官方网上商店:Samsung CA
2020/12/18 全球购物
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
Python面试题:Python是如何进行内存管理的
2014/08/04 面试题
2014国培学习感言
2014/03/05 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
2015年副班长工作总结
2015/05/15 职场文书
护士爱岗敬业心得体会
2016/01/25 职场文书
2016年中学植树节活动总结
2016/03/16 职场文书
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android