针对前端优化的点有很多,例如:图片压缩,雪碧图,js/css/html 文件的压缩合并,  cdn缓存, 减少重定向, 按需加载 等等

最近有心想针对 ionic项目 和 vue项目,做一个比较大的优化,做成按需加载(也就是无请求不加载),此刻我内心是无比激动的。

推荐看的按需加载的文章:

angular 按需加载 相关文章:

1:  http://www.alloyteam.com/2016/03/es6-front-end-developers-will-have-to-know-the-top-ten-properties/

2:  http://www.mamicode.com/info-detail-407754.html

vue 按需加载  相关文章:

1: http://cn.vuejs.org/guide/components.html#异步组件

2: http://webpack.github.io/docs/code-splitting.html

-----------------------------------------------------------

今天就针对,按需加载(也就是无请求不加载),分别给出一些实际项目经验的方案:

angular 按需加载方案:$ocLazyLoad

vue 按需加载方案:require([异步加载的组件], resolve)

angular按需加载:$ocLazyLoad

需要3个步骤,就可以实现按需加载的方案。

第1步:bower install oclazyload

第2步:$ocLazyLoad封装:

第3步:ui-router 路由配置:

此方案做到了,template 和 controller 的文件按需加载。此时去访问页面就可以看到效果了。

效果Gif演示:

vue 按需加载方案:require([异步加载的组件], resolve)

需要2个步骤,就可以完成按需加载

第一步,针对webpack.js 做配置的更改,如图:

第二步:针对 router 路由,进行更改,主要是component的更改,如图。

第三步:执行 npm run build 打包命令,就可以看到chunks文件夹生成了很多chunk的小文件,就是vue组件页面,如图:

原创《分享(Angular 和 Vue)按需加载的项目实践优化方案》的更多相关文章

  1. Vue按需加载提升用户体验

    Vue官方文档异步组件: 在大型应用中,我们可能需要将应用拆分为多个小模块,按需从服务器下载.为了让事情更简单, Vue.js 允许将组件定义为一个工厂函数,动态地解析组件的定义.Vue.js 只在组 ...

  2. vue按需加载组件-webpack require.ensure

    使用 vue-cli构建的项目,在 默认情况下 ,执行 npm run build 会将所有的js代码打包为一个整体, 打包位置是 dist/static/js/app.[contenthash].j ...

  3. vue 按需加载,缓存,导航守卫

    开发中的注意事项:代码性能的优化 1. 减少对第三方的依赖,降低耦合度 2. 加强组件的重复利用率 3. 按需加载 4. 缓存 (尽量发送请求后保存数据) 5. 开发过程中,尽量有着面向对象的思想,这 ...

  4. vue按需加载组件,异步组件

    说实话,我一开始也不知道什么叫按需加载组件,组件还可以按需加载???后来知道了 学不完啊...没关系,看我的 按需加载组件,或者异步组件,主要是应用了component的 is 属性 template ...

  5. 关于VUE首屏加载过长的优化,VUE项目开发优化

    1. 按需引入UI组件 当下市面上流行的UI组件基本都支持按需加载,本文以Element UI为例: (1)     新建一个elementUI.js文件 (2)     访问地址找到按需引入方式的说 ...

  6. vue 按需加载

    vue 构建单页面应用,但是问题是随着系统的体积变大,js文件也体积太大了,这时候就需要按需要进行加载了 vue-router提供了懒加载的方式 const Foo = resolve => r ...

  7. 三步解决 vue 按需加载

    1  webpack 的 output 配置 chunkFleName 树干名称: " chunks/[name]-[chunkhash:8].js  " 这一步是配合第三步, 生 ...

  8. vue中的懒加载和按需加载

    懒加载 (1)定义:懒加载也叫延迟加载,即在需要的时候进行加载,随用随载. (2)异步加载的三种表示方法: 1. resolve => require([URL], resolve),支持性好 ...

  9. requirejs按需加载angularjs文件

    之前分享了一篇用ocLazyLoad实现按需加载angular js文件的博客.本来当时想会使用一种方法就行了.可最近刚好有时间,在网上查找了一下requirejs实现angular js文件按需加载 ...

随机推荐

  1. 转载Alpine基础

    2018-08-06 基础镜像 FROM alpine:latest 国内可用镜像地址 官方镜像列表:http://rsync.alpinelinux.org/alpine/MIRRORS.txt 镜 ...

  2. CentOS / RHEL 7 : How to setup yum repository using locally mounted DVD

    1. Mount the RHEL 7 installation media ISO to some directory. For example /mnt : # mount -o loop rhe ...

  3. VS2017 未找到编译器可执行文件 csc.exe

    vs2017 网站报错 原因Web.config是中下面这段:注释就可以了 <!--<system.codedom> <compilers> <compiler l ...

  4. 12生成器,send,推导式

    # 1.生成器的本质就是迭代器 # 2.通过函数变成一个生成器 # def func(): # print(1) # yield 5 # 我的函数走到这了 # print(2) # yield 9 # ...

  5. poj1164

    #include<iostream> using namespace std; ][]; ][]; int roomnum; int maxroom; int m,n; typedef s ...

  6. 召回率(Recall),精确率(Precision),平均正确率

    https://blog.csdn.net/yanhx1204/article/details/81017134 摘要 在训练YOLO v2的过程中,系统会显示出一些评价训练效果的值,如Recall, ...

  7. Publisher/Subscriber

    public interface IPublisher { void Publish<T>(T data); void Subscribe<T>(object subscrib ...

  8. python 不知道是啥

    1.判断两个大文件是否是同一个文件 import os import hashlib import time start = time.time() path1 = r"E:\视频资料\el ...

  9. 增长中的时间序列存储(Scaling Time Series Data Storage) - Part I

    本文摘译自 Netflix TechBlog : Scaling Time Series Data Storage - Part I 重点:扩容.缓存.冷热分区.分块. 时序数据 - 会员观看历史 N ...

  10. Java中几个常用类

    1.1 包装类 把八大基本数据类型封装到一个类中,并提供属性和方法,更方便的操作基本数据类型. 包装类的出现并不是用于取代基本数据类型,也取代不了. 包装类位于java.lang包中 Number 类 ...