思考的豆芽

技术分享


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

Vue cli 3.0项目优化总结Vue Router懒加载+按需引入+高可用CDN

发表于 2019-02-21 | 更新于 2023-10-26 | 分类于 optimize

前言

使用Vue.js构建的单页面应用(SPA - single page application),需要引入很多的库,包括自家的router、vuex等,第三方的axios、loadash等等,不做任何配置打包之后的文件就有10M+,在第一次载入页面的时候需要加载完整的应用代码,会出现长时间的白屏,用户体验极差。

我们的目标就是减少包体积、提升加载速度,同时保证可用性、维护性、不侵入业务代码。

具体的优化方法包括:

  • Vue Router 懒加载
  • CDN引入依赖
  • 第三方库按需引入
  • 开启Gzip
  • 关闭生产环境sourceMap
    阅读全文 »

Vue学习笔记

发表于 2020-05-15 | 更新于 2023-10-26 | 分类于 note

Vue

MVVM

在MVC的基础上实现了view-model,即视图与数据的双向绑定,视图只是数据的映射,所有逻辑都是对数据的修改,不用直接操作DOM。

阅读全文 »

学习笔记

发表于 2020-09-23 | 更新于 2023-10-26 | 分类于 note

学习笔记

一些js的基础知识

阅读全文 »

大文件上传解决方案

发表于 2018-09-19 | 更新于 2023-10-26
本文主要介绍大数量(万级)文件和大文件(G级)上传过程当中遇到的问题,以及解决方案
阅读全文 »

redis延时队列

发表于 2021-05-10 | 更新于 2021-05-27 | 分类于 note

redis延时队列

基本原理

利用redis的Sorted Set有序集合数据结构实现

  • 订单创建时,订单id和当前时间戳作为Sorted Set 的value和score
  • 定时通过zrangebyscore返回指定score区间内的订单进行处理
  • 通过zrem保证只有一个消费者能从Sorted Set中删除元素,删除成功消费者就可以执行任务了【
    阅读全文 »

JavaScript继承

发表于 2021-04-11 | 更新于 2021-05-27 | 分类于 note

JavaScript继承

原型链

  • 普通对象有__proto__和constructor
  • 函数也是对象,没有constructor,独有prototype属性

251615513677_.pic_hd_123

阅读全文 »

JavaScript模块规范

发表于 2021-03-10 | 更新于 2021-05-27 | 分类于 note

JavaScript模块规范

CommonJS

Node.js和Webpack采用CommonJS编写,包括:

  • 模块引入(require),用于加载模块
  • 模块定义(exports),对外的接口,加载模块其实就是加载module.exports属性(Node中每个模块exports即为module.exports,不要对exports重新赋值,只能添加属性)
  • 模块标识(module),在模块内代表当前模块

    阅读全文 »

linux常用命令

发表于 2020-02-29 | 更新于 2021-05-27 | 分类于 Linux

vim

ctrl+b向上翻页
ctrl+f向下翻页
v进入视图模式,实现多选
ctrl+v进入列视图模式,实现多列选中
I列视图模式多列输入,需要返回命令模式才会应用

阅读全文 »

RN填坑记录

发表于 2019-09-19 | 更新于 2021-05-27 | 分类于 React Native
  • 网络调试,开启网络调试后,发送请求无法正常返回数据,response为空,需要关闭后恢复正常
  • 安卓获取权限,在AndroidManifest中声明的,在android 6.0之前直接就可以获取,在之后一些敏感的权限(定位、文件、相机等)需要先声明然后使用PermissionsAndroid动态获取(弹窗让用户确认)。可根据用户是否选择不再提醒要求用户到系统设置中修改。
  • formData无法使用,需要在app.js中加入以下代码
    阅读全文 »
12

豆芽

19 日志
8 分类
16 标签
© 2018 – 2023 豆芽
,您是本站的第位访客
0%