Vue异步组件使用详解


Posted in Javascript onApril 08, 2017

Vue的异步组件,供大家参考,具体内容如下

1、前置要求

建议使用webpack;

Browserify在默认情况下不支持;

2、用法解释

首先上官网说明:异步组件

虽然说明是没问题的,但是示例中的写法怪怪的,不符合一般新手学习者在实际使用中的习惯。

嗯,换句话说,这段代码告诉你,通过这种方式引入异步组件,然后他漏掉了一些内容,比如说赋值,如何使用之类。

【1】官方示例代码:

Vue.component('async-webpack-example', function (resolve) {
 // 这个特殊的 require 语法告诉 webpack
 // 自动将编译后的代码分割成不同的块,
 // 这些块将通过 Ajax 请求自动下载。
 require(['./my-async-component'], resolve)
})

【2】官方示例代码的实际使用方法:

你如果是一个新手,看上去就懵逼了(比如之前的我,完全不知道这个例子是想干嘛)

假如你写一个test.vue文件,在<script>标签里,实际使用方法如下:

//test.vue的部分
<script>
  import Vue from 'vue'

  //关键是以下这部分代码
  //需要将引入的异步组件,赋值给变量searchSearch
  //然后在下方components对象里,将变量正常添加进去,就可以使用异步组件了
  //第一个参数是组件名,第二个是异步引入的方法
  const searchSearch = Vue.component('searchSearch', function (resolve) {
    require(['./service-search.vue'], resolve)
  })

  export default{
    data(){
      return {}
    },
    methods: {},
    components: {
      searchSearch: searchSearch
    }
  }
</script>

【3】更简单的异步组件的使用方法

上面代码还是太麻烦了,要引入Vue实例先,然后引入组件,然后才能使用。

教练,有木有更简单的?有~

<script>
  export default{
    data(){
      return {}
    },
    methods: {},
    components: {
      searchSearch: function (resolve) {
        //异步组件写法
        require(['./service-search.vue'], resolve)
      }
    }
  }
</script>

只需要把原有的searchSearch: searchSearch改为一个函数,然后在函数里异步引入就行。

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

Javascript 相关文章推荐
解析jQuery与其它js(Prototype)库兼容共存
Jul 04 Javascript
jquery浏览器滚动加载技术实现方案
Jun 03 Javascript
extjs 时间范围选择自动判断的实现代码
Jun 24 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
Sep 23 Javascript
jquery-mobile表单的创建方法详解
Nov 23 Javascript
js实现点击按钮弹出上传文件的窗口
Dec 23 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 Javascript
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
Vue中使用 setTimeout() setInterval()函数的问题
Sep 13 Javascript
vue 内置过滤器的使用总结(附加自定义过滤器)
Dec 11 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
Feb 20 Javascript
关于React Native 无法链接模拟器的问题
Jun 21 Javascript
利用jQuery解析获取JSON数据
Apr 08 #jQuery
AngularJS $http模块POST请求实现
Apr 08 #Javascript
node.js实现登录注册页面
Apr 08 #Javascript
详解vue2路由vue-router配置(懒加载)
Apr 08 #Javascript
js仿微信公众平台打标签功能
Apr 08 #Javascript
详解node.js搭建代理服务器请求数据
Apr 08 #Javascript
无循环 JavaScript(map、reduce、filter和find)
Apr 08 #Javascript
You might like
模仿OSO的论坛(一)
2006/10/09 PHP
PHP截取发动短信内容的方法
2017/07/04 PHP
让任务管理器中的CPU跳舞的js代码
2008/11/01 Javascript
setTimeout 不断吐食CPU的问题分析
2009/04/01 Javascript
JQuery插件Style定制化方法的分析与比较
2012/05/03 Javascript
javascript如何动态加载表格与动态添加表格行
2013/11/27 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
jQuery中复合属性选择器用法实例
2014/12/31 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
jQuery实现下拉框功能实例代码
2016/05/06 Javascript
javascript 小数乘法结果错误的处理方法
2016/07/28 Javascript
微信小程序链接传参并跳转新页面
2016/11/29 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
微信小程序 switch组件详解及简单实例
2017/01/10 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
JavaScript的for循环中嵌套一个点击事件的问题解决
2017/03/03 Javascript
详解 vue better-scroll滚动插件排坑
2018/02/08 Javascript
Angular学习笔记之集成三方UI框架、控件的示例
2018/03/23 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
对angularjs框架下controller间的传值方法详解
2018/10/08 Javascript
详解ES6中的 Set Map 数据结构学习总结
2018/11/06 Javascript
JS闭包经典实例详解
2018/12/20 Javascript
前端js中的事件循环eventloop机制详解
2019/05/15 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
[01:46]DOTA2上海特锦赛小组赛英文解说KotlGuy采访
2016/02/27 DOTA
Python 实现文件的全备份和差异备份详解
2016/12/27 Python
python消费kafka数据批量插入到es的方法
2018/12/27 Python
Python3.6.2调用ffmpeg的方法
2019/01/10 Python
Marc Jacobs官方网站:美国奢侈品牌
2017/08/29 全球购物
澳大利亚宠物食品和药物在线:Jumbo Pets
2018/03/24 全球购物
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
爱护公物标语
2014/06/24 职场文书
校园广播稿范文
2015/08/19 职场文书
教你怎么用python selenium实现自动化测试
2021/05/27 Python
Django REST framework 限流功能的使用
2021/06/24 Python