本代码已组件化,可以直接使用. 说明:本组件可以直接解析.vue文件,为了支持less语法解析,在组件中引入less.js,可在less官网下载. 组件代码 <template> <div class="remote"> <component :is="currentView" v-bind="$props"/> </div> </template> <script> imp…
项目中用到了高德地图的API以及UI组件库,因为是直接把引入script写在index.html中,项目打包后运行在服务器,用浏览器访问加载第一次时会非常慢,主要原因是加载高德地图相关的js(近一分钟),用户体验非常不好. 于是在网上找了些资料,改成异步加载的方式.以下是实现方案: 1.首先定义一个asyncLoadJs.js(这里用到了AMap和AMapUI): // 异步加载高德地图API export function loadMP() { const mp = new Promise(f…
今天遇到一个需求,某个页面是个动态页面,由多个子组件构成. 之前我们的做法是将N个需要的组件import进主页面,然后引用一下即可.但是现在遇到的问题是, 这个动态页面存在多个业务,有的业务需要某几个组件,有的不需要,不同的业务需要的子组件是不同的.也就是说,如果我把所有需要的子组件全部import进去,就会存在一些用不上的情况,那么这个动态页面就会变成一个大而全的臃肿页面,这个当然是我们不期望看到的. 于是,我就在想是否可以根据我页面上传递的参数去循环出我需要的组件? 首先说下,需求是这个页面…
关于loading组件的. loading.vue <template> <div class="loading"> <div class="mock">数据加载中</div> <div class="loader-inner ball-pulse"> <div></div> <div></div> <div></div&…
来源:https://www.jianshu.com/p/69694013e36b----------------------------------------------------- 普通方式 文件目录:src/route.js import React from 'react' import { Router, Route, Switch } from 'dva/router' import IndexPage from './routes/IndexPage'; import Cate…
一.vue的编译模式 (1)路由配置信息 //eg1: const MSite = resolve => require.ensure([], () =>resolve(require(['myComponent.vue'])) //eg2 需要syntax-dynamic-import插件 const MSite = () => import('../pages/MSite/MSite.vue') //异步加载 //import MSite from '../pages/MSite/M…
何时使用异步加载组件 当首页app.js文件太大时,可以拆分组件异步加载,如果app.js文件很小时,不建议使用异步加载组件,因为异步加载组件时每次都要发送一个HTTP请求,这样的代价远比首页一次性加载小的js文件的开销大:所以当首页一次性加载的文件太大时,可以使用异步加载组件的写法. 原先写法: 异步加载写法: 不仅路由内可以使用异步加载,组件内也可使用异步加载,建议只有当app.js大于1M时再使用:…
1. 创建 asyncComponent 异步加载工具 import React from 'react' function asyncComponent(loadComponent){ class AsyncComponent extends React.Component{ static defaultProps = { loading: <p>Loading</p>, error: <p>Error</p> } constructor(props){…
为什么要动态加载呢?而不是一次性加载呢? 一次性?你能保证你拿的内容不多,那从性能方面说还是OK的.否则,就该什么时候用,就什么时候取. 得出这想法,源于前几天上班赶产品的故事: A组件是父亲,B组件是A组件的孩子.刚刚,我在A组件里直接加载B组件. 编译居然用了将近一分半钟,我都还没加其他C孩子,D孩子呢. 现在,我在A组件里动态加载B组件,也就是点击工作配置单才加载B组件,居然十秒左右,惊呆了. 下面看看动态加载的方法: A组件的 Template标签:由于我的动态加载的组件不唯一,所以弄了…
这是Webpack+React系列配置过程记录的第四篇.其他内容请参考: 第一篇:使用webpack.babel.react.antdesign配置单页面应用开发环境 第二篇:使用react-router实现单页面应用路由 第三篇:优化单页面开发环境:webpack与react的运行时打包与热更新 第四篇:React配合Webpack实现代码分割与异步加载 自从前几篇文章介绍如何搭建React+Webpack单页面应用开发环境之后,我就基于这个环境对我的书籍分享网站的管理后台进行业务代码的实现.…