vue-router

vue性能优化

一笑奈何 提交于 2020-10-30 06:57:20
小编这一期跟大家讲一下关于优化Vue性能相关的知识,Vue众所周知,是一个轻量级的框架,源码仅仅为72.9KB,但是也有它自己的缺点,就是首屏加载会比较慢,因为和传统项目相比,Vue会在首屏加载的时候加载出所有的组件和插件,并且向服务器请求数据,导致可能有时候首屏加载的时间就会到4、5秒的样子。 但是这样做很明显是在挑战用户的耐心,按照惯例,最好能把加载时间控制在1秒左右。接下来小编讲一下Vue性能优化的两个个方向。 一.源码优化 1、代码模块化 ,咱们可以把很多常用的地方封装成单独的组件,在需要用到的地方引用,而不是写过多重复的代码,每一个组件都要明确含义,复用性越高越好,可配置型越强越好,包括咱们的css也可以通过less和sass的自定义css变量来减少重复代码。 2、for循环设置key值 ,在用v-for进行数据遍历渲染的时候,为每一项都设置唯一的key值,为了让Vue内部核心代码能更快地找到该条数据,当旧值和新值去对比的时候,可以更快的定位到diff。 3、Vue路由设置成懒加载 ,当首屏渲染的时候,能够加快渲染速度。 4、更加理解Vue的生命周期 ,不要造成内部泄漏,使用过后的全局变量在组件销毁后重新置为null。 5、可以使用keep-alive ,keep-alive是Vue提供的一个比较抽象的组件,用来对组件进行缓存,从而节省性能。 二.打包优化 1、修改vue

五种工具可视化分析 webpack 打包性能瓶颈

只愿长相守 提交于 2020-10-29 17:17:01
前言 当项目业务功能达到一定规模时,默认的配置已经不足以满足开发、用户的期望,我们就需要对 webpack 配置进行优化。 关于优化,有几个基本规则: 首先知道要优化什么; 针对待优化点进行优化; 衡量优化前后对项目的影响; 如何知道具体该如何优化喃,最直观的方式是分析它的输出文件,但 webpack 打包后的文件非常大且可读性差,下面就介绍几种可视化的分析工具,帮助你快速定位问题所在。 一、测量构建时间 优化 webpack 构建速度的第一步是知道将精力集中在哪里。我们可以通过 speed-measure-webpack-plugin 测量你的 webpack 构建期间各个阶段花费的时间: 步骤一:安装 speed-measure-webpack-plugin npm install speed-measure-webpack-plugin --save-dev 步骤二:配置 // 分析打包时间 const SpeedMeasurePlugin = require ( "speed-measure-webpack-plugin" ); const smp = new SpeedMeasurePlugin(); // ... module .exports = smp.wrap(prodWebpackConfig) 它能够: 分析整个打包总耗时; 每个插件和 loader

vue.js相关UI组件收集

谁说胖子不能爱 提交于 2020-10-29 08:53:43
内容 UI组件 开发框架 实用库 服务端 辅助工具 应用实例 Demo示例 ###UI组件 element ★9689 - 饿了么出品的Vue2的web UI工具套件 Vux ★6927 - 基于Vue和WeUI的组件库 mint-ui ★4870 - Vue 2的移动UI元素 iview ★4782 - 基于 Vuejs 的开源 UI 组件库 Keen-UI ★2401 - 轻量级的基本UI组件合集 vue-material ★2294 - 通过Vue Material和Vue 2建立精美的app应用 muse-ui ★2052 - 三端样式一致的响应式 UI 库 vuetify ★1745 - 为移动而生的Vue JS 2组件框架 vonic ★1546 - 快速构建移动端单页应用 eme ★1402 - 优雅的Markdown编辑器 vue-multiselect ★1193 - Vue.js选择框解决方案 vue-table ★844 - 简化数据表格 VueCircleMenu ★790 - 漂亮的vue圆环菜单 vue-chat ★755 - vuejs和vuex及webpack的聊天示例 radon-ui ★643 - 快速开发产品的Vue组件库 vue-waterfall ★615 - Vue.js的瀑布布局组件 vueAdmin ★612 -

vue插件

百般思念 提交于 2020-10-29 05:50:53
UI组件 element - 饿了么出品的Vue2的web UI工具套件 Vux - 基于Vue和WeUI的组件库 mint-ui - Vue 2的移动UI元素 iview - 基于 Vuejs 的开源 UI 组件库 Keen-UI - 轻量级的基本UI组件合集 vue-material - 通过Vue Material和Vue 2建立精美的app应用 muse-ui - 三端样式一致的响应式 UI 库 vuetify - 为移动而生的Vue JS 2组件框架 vonic - 快速构建移动端单页应用 eme - 优雅的Markdown编辑器 vue-multiselect - Vue.js选择框解决方案 vue-table - 简化数据表格 VueCircleMenu - 漂亮的vue圆环菜单 vue-chat - vuejs和vuex及webpack的聊天示例 radon-ui - 快速开发产品的Vue组件库 vue-waterfall - Vue.js的瀑布布局组件 vue-carbon - 基于 vue 开发MD风格的移动端 vue-beauty - 由vue和ant design创建的优美UI组件 vue-blu - 帮助你轻松创建web应用 vueAdmin - 基于vuejs2和element的简单的管理员模板 vue-syntax-highlight -

vue基本知识点总结---面试必备

孤人 提交于 2020-10-24 07:56:24
最近入职新的公司,整体来说还是不错的。前一阵子看了很多关于vue的知识点,自己理解着整理一下,再加深一下印象。也希望可以帮助到有需要的同学。理解错误的地方,欢迎指正。 1、对于Vue是一套渐进式框架的理解 答:Vue是渐进的,没有强主张,是个轻量视图。它只做了自己应该做的事,没有做多余的事。 2、vue.js的两个核心是什么? 答:数据驱动和组件化。 3、vue中的模板编译原理 答:模板指的就是template。如果我们传了一个template,我们会把template转换成一个render函数,然后通过render函数返回虚拟DOM,再把虚拟的DOM变成真正的DOM。 4、 响应式数据的原理 答:响应式就是当数据变化的时候,可以让视图也同步更新。核心是Object.defineProperty,vue初始化的时候,Object.defineProperty依次会给data的属性上增加get和set方法,并对依赖进行收集,如果数据发生变化,就会去通知相关的依赖做出对应的更新。 5、vue生命周期钩子函数有哪些? (vue2.0) 答:① 创建期间的生命周期函数: beforeCreate():此时,实例在内存中刚刚创建出来,data和methods没 有被初始化。 created():此时,实例已经在内存中创建完成,data和methods已经被初始化完成。模板还没有编译。

vue 3.x 如何高效学成?本文详解

五迷三道 提交于 2020-10-15 00:41:52
前言 本文所分享的是关于 vue 3.x 在用法上的改变,而不是在代码实现上的不同。 虽然 vue2 到 vue3 的实现大改,但在用法上变化基本不大,比较明显的一个变化就是添加了 setup(){} 函数了,几乎所有的配置变成了以函数的方式进行定义。即使是这样,但小改动还是很多的。本文主要分享的是 vue 2.x 与 vue 3.x 之间一些常见用法的差异。虽然记录的不多,但也不算少。本文资料来源: github.com/vuejs/rfcs/… 当然这里默认你已经熟练掌握了 vue 2.x 的使用,下面我们就来看看。 新增 composition-api 1.逻辑复用和代码组织 这是 vue 3.0 的一个核心变更了。除了改了我们定义状态的书写方式外,也为我们提供体验更棒的逻辑复用和代码组织,新的方式可以让你把同一个业务逻辑的代码(状态,计算属性,方法等)都放到一块。这听起来可能有点不明不白,但如果你写过比较复杂的组件,你就会发现,这个好。旧版本的 created、beforeCreated 钩子函数已费弃,在 vue 3.0 中用 setup 代替。 另外注意:光理论是不够的 。在此赠送2020最新企业级 Vue3.0/Js/ES6/TS/React/node等实战视频教程,想学的可进裙 519293536 免费获取,小白勿进哦! 2.更好的类型推断 更好的支持

Vue3教程,抢先学习

谁说胖子不能爱 提交于 2020-10-14 13:55:27
Vue 3尚未正式发布,但是维护者已经发布了Beta版本,供我们的参与者尝试并提供反馈。 如果你想知道Vue 3的主要功能和主要变化是什么,那么我将在这篇文章中重点介绍一下,告诉你使用Vue 3 beta 9创建一个简单的应用程序。 我将介绍尽可能多的新内容,包括fragments,teleport,Composition API以及其他一些晦涩的更改。我将尽力解释该功能或更改的原理。 Vue3相关文章: Vue3 Composition API如何替换Vue Mixins Vue3 Composition API中的提取和重用逻辑 如何在Vue2与Vue3中构建相同的组件 Vue3中的Vue Router初探 我们将建立什么 我们将构建一个带有模式窗口功能的简单应用。我之所以选择它,是因为它可以方便地展示Vue 3的许多变化。 这是该应用在打开和关闭状态下的外观,因此你可以在脑海中描绘出我们正在做什么: Vue 3安装和setup 与其直接安装Vue 3,不如克隆一个项目 vue-next-webpack-preview ,这将为我们提供一个包括Vue 3在内的最小的Webpack设置。 $ git clone https://github.com/vuejs/vue-next-webpack-preview.git vue3-experiment $ cd vue3