详解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 相关文章推荐
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 Javascript
IE6下通过a标签点击切换图片的问题
Nov 14 Javascript
jquery 获取标签名(tagName)示例代码
Jul 11 Javascript
jquery中对于批量deferred的处理方法
Jan 22 Javascript
jquery 获取dom固定元素 添加样式的简单实例
Feb 04 Javascript
javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法
May 14 Javascript
使用AngularJS来实现HTML页面嵌套的方法
Jun 17 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
Aug 18 Javascript
jQuery使用经验小技巧(推荐)
May 31 Javascript
全面解析标签页的切换方式
Aug 21 Javascript
javascript数组去重方法分析
Dec 15 Javascript
解决jquery有正确返回值但不执行success函数的问题
Aug 20 jQuery
微信小程序 设置启动页面的两种方法
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采用session实现防止页面重复刷新
2015/12/24 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
PHP处理Ajax请求与Ajax跨域问题
2017/02/13 PHP
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
node.js操作mysql(增删改查)
2015/07/24 Javascript
jQuery基本选择器(实例及表单域value的获取方法)
2016/05/20 Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
2016/12/23 Javascript
Vue 过渡实现轮播图效果
2017/03/27 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
css和js实现弹出登录居中界面完整代码
2017/11/26 Javascript
javascript Function函数理解与实战
2017/12/01 Javascript
axios发送post请求,提交图片类型表单数据方法
2018/03/16 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
python基于xml parse实现解析cdatasection数据
2014/09/30 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
Python爬虫包BeautifulSoup异常处理(二)
2018/06/17 Python
Python中常用的内置方法
2019/01/28 Python
Python常用特殊方法实例总结
2019/03/22 Python
Python读写文件基础知识点
2019/06/10 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
关于tf.TFRecordReader()函数的用法解析
2020/02/17 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
HTML5新增元素如何兼容旧浏览器有哪些方法
2014/05/09 HTML / CSS
牧马人澳大利亚官网:Wrangler澳大利亚
2019/10/08 全球购物
俄语翻译实习生的自我评价分享
2013/11/06 职场文书
七年级地理教学反思
2014/01/26 职场文书
高中微机老师自我鉴定
2014/02/16 职场文书
涉密人员保密承诺书
2014/05/28 职场文书
中队活动总结
2014/08/27 职场文书
2014幼儿园保育员工作总结
2014/11/10 职场文书
学生个人总结范文
2015/02/15 职场文书
借条如何写
2015/05/26 职场文书
班级元旦晚会开幕词
2016/03/04 职场文书
Java处理延时任务的常用几种解决方案
2022/06/01 Java/Android
Redis sentinel哨兵集群的实现步骤
2022/07/15 Redis