自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 uni-app开发微信小程序初体验以及项目目录结构理解

一、uni-app是什么 uni-app是一个基于Vue的全平台开发框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多个平台。 uni-app官网 二、uni-app初体验 初始化一个uni-app的方法有两种, 1.使用HBuilderX的图形界面 2.使用vue-cli vue create -p dcloudio/uni-preset-vue my-project 需要先安装@vue/cli 运行时的

2020-10-30 11:03:15 873

原创 Vue2升级到Vue3

最近想玩玩Vue3 如题,Vue3已经是beta版了,想玩玩Vue3,就对原来Vue2的项目进行了升级。参考了慕课网Dell Lee的课程内容和Vue3官方文档。 一、main.js中的变化 从技术上讲,Vue 2 没有“app”的概念,我们定义的应用只是通过 new Vue() 创建的根 Vue 实例。从同一个 Vue 构造函数创建的每个根实例共享相同的全局配置,因此在测试期间,全局配置很容易意外地污染其他测试用例。 ——Vue3中文文档 这其实主要是创建Vue实例时发生了变化。现在使用一个新的全局A

2020-10-29 21:38:48 10043

原创 函数节流与函数防抖

函数防抖和函数节流 在某些时候,某些事件会频繁的触发,影响性能,所以需要防抖操作来进行性能优化。 比如用户在输入框中输入内容而输入框会给出相关内容,此时如果监听input的内容变化则会多次触发对应事件,而这些事件是我们不希望触发的。我们希望当input框的内容改变并且一定时间内不再改变时,才将相关内容渲染在页面上。 此时就可以用到函数防抖和函数节流。 一、函数防抖 函数防抖重点在于有足够的时间间隔才触发某个回调。 实现方法的核心在于延时器的注销和重新注册。 函数防抖 在事件被触发n秒后再执行回调,如果在这

2020-10-21 22:30:42 85

原创 Vue的响应式原理

Vue的响应式原理 Tips:根据coderwhy老师的讲解写的 通过数据劫持和发布者-订阅者模式来实现。一旦发现属性发生改变就通知订阅者,触发相应的回调,来改变视图。 一、数据劫持(Observer) Observer实现对vue各个属性进行监听 通过Object.defineProperty方法(定义属性)来劫持属性的getter和setter,监听属性的改变和获取依赖(谁在使用这个值)。 Object.defineProperty方法有三个参数,第一个是对象,第二个是key,第三个是value。可以

2020-10-16 00:21:21 171

原创 windows下nginx的命令

任务管理器关闭Nginx进程 第一次使用Nginx时一次性点击了很多次exe文件导致修改配置之后想要通过任务管理器关闭Nginx时找了很久。然后在网上找了一下nginx在windows下的常用命令。 需要在Nginx的根目录下使用命令 start nginx : 启动nginx服务 nginx -s reload : 重启nginx服务 nginx -s stop : 快速关闭(不保存相关信息) nginx -s quit : 正常关闭(保存相关信息) nginx -V : 查看版本号 nginx -t :

2020-10-14 23:27:10 94

原创 Vue中的一些常用的优化插件

记录一些在Vue开发中常用的优化插件 一、Better-Scroll 一个非常好用的滚动插件,由于js原生滚动在移动端可能会出现难以滑动或者出现一卡一卡的感觉,所以会使用到一些滚动插件,Better-Scroll就是一个很好的选择。 GitHub地址 使用方法 1.npm install better-scroll --save 2.import 导入 3.new 一个BScroll实例即可 二、FastClick 一个用来解决移动端点击延迟的插件。 GitHub地址 使用方法 1.npm insta

2020-10-14 18:47:58 397

原创 vue-router中replace当前路由报错

问题 在做vue项目时,发现replace到当前路由path时会报错,然后在百度上找了挺久,发现了一个可行的解决方法。 解决方法 在main.js中添加如下代码即可 const originalPush = router.replace; router.replace = function replace(location) { return originalPush.call(this, location).catch(err => err) }; ...

2020-10-14 18:25:36 2058

原创 vue中Toast插件的封装

vue中插件的封装 类似于Toast这种功能,最好是封装成一个插件再来使用,更加方便。 那么如何在vue中封装插件呢 首先要先将对应的组件封装好,有了.vue的组件文件后就可以开始将组件封装成插件了。 一、在对应的插件目录下创建一个js文件,一般习惯命名为index.js 二、编辑index.js //导入组件 import Toast from './Toast' const obj = {} // install方法 obj.install = function(Vue) { // 1.创

2020-10-14 18:21:26 427

原创 发布订阅模式与观察者模式的学习

观察者模式(Observer Pattern) 观察者模式定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知,并自动更新。观察者模式属于行为型模式,行为型模式关注的是对象之间的通讯,观察者模式就是观察者和被观察者之间的通讯。 当观察者(Observer)订阅(Subscribe)之后,一旦主题的内容发生更新,就会触发Fire Event中的事件 自己写的简易版观察者模式 // 定义主题Subscribe class Subject {

2020-10-13 10:13:05 58

原创 Vuex

Vuex——状态管理模式 创建 const store = new Vuex.Store({ state: { }, mutations: { }, actions: { }, getters: { }, modules: { } }) state state用来存放状态,也就是变量。Vuex 使用单一状态树,每个应用只对应一个vuex对象。 创建 state: { cartL

2020-10-12 16:23:12 66

原创 有关vue组件的强制刷新

问题 在做vue小项目的分类页面时,发现在点击相应的类别后详情页面依旧为空,想到是由于数据的异步请求造成。所以想在每次异步请求完成后强制vue刷新一下对应的分类详情页面子组件。 三种强制刷新组件的方法 1.使用v-if销毁对应子组件再重新创建,该方法不推荐,需要使用watch监听数据的变更。 2.使用this.$forceUpdate方法,这个方法可以使当前组件调用这个方法时,重新渲染组件。 3.更改key的值可以使组件重新渲染,这是官方推荐的一种方法。 解决 使用的是第三种方法,也就是修改组件的key

2020-10-09 18:48:57 346

原创 关于Better-Scroll的高度计算问题

问题出现 在做vue的商城小项目的时候,为了解决原生滚动的问题而使用了Better-Scroll插件。但是使用时发现Better-Scroll的高度计算出了点问题,导致整个内容无法滚动。 原因 所有的图片都是异步加载的,所以当Better-Scroll计算内容高度时图片的加载可能还没有完成,导致高度计算错误,从而出现内容高度没问题但是却无法滚动的情况。 解决方法 尝试在创建Better-Scroll对象时使用nextTick()方法来解决该问题,但是没有效果,所以又尝试给了一个200ms延迟,解决了该问题,

2020-10-08 18:50:01 1486

原创 学习记录——axios的拦截器

axios的拦截器 axios的拦截器有2种,请求拦截和响应拦截。 请求拦截 请求拦截又分为请求成功拦截和请求失败拦截。 基本用法: //请求拦截器,两个参数(请求成功, 请求失败) // 注意:拦截掉之后要将config给返回出去才能完成请求 axios.interceptors.request.use(config => { console.log(config); return config; }, err => { co

2020-09-29 20:11:15 113

原创 学习记录——偶然发现的js闭包理解

闭包 闭包概念 闭包:能够读取其他函数内部变量的函数 也就是定义在一个函数内部的函数,这个内部的函数持有外部函数变量的引用。 闭包可以让你从内部函数访问外部函数作用域。在 JavaScript 中,每当函数被创建,就会在函数生成时生成闭包。 ———MDN 阮一峰老师的思考题(this和闭包) 代码片段1:   var name = "The Window";   var object = {     name : "My Object",     getNameFunc : func

2020-09-29 18:50:02 213

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除