自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (1)
  • 收藏
  • 关注

转载 TinyCE结合插件MathType(wiris)

TinyCE结合插件MathType(wiris)

2021-06-04 16:07:47 430

转载 小程序app.globalData属性值改变时其它页面的引用响应更新

小程序app.globalData属性值改变时其它页面的引用响应更新

2021-06-01 20:19:15 2045

转载 微信小程序自定义tabbar

微信小程序自定义tabbar

2021-05-12 17:27:24 200

原创 梁宵《TypeScript开发实战》(基础篇)

梁宵《TypeScript开发实战》(基础篇)重塑“类型思维”类型基础强类型动态类型与静态类型重塑“类型思维”尽管es标准在几年内发展迅速,但是在类型检查方面依然是无所建树,这就会导致我们在定义函数的时候难以对函数的参数类型进行界定。众所周知js是一门动态弱类型语言,对变量的类型非常宽容,但是对于开发者而言,如果长期在没有约束的情况下开发,就会造成类型思维的缺失养成不良的编程习惯。ts就是致力于为js提供静态类型检查,现今angular和vue团队开始全面使用ts重构代码,在es标准推出静态类型检查之

2021-04-27 17:34:02 919 2

原创 Vue的diff算法导致的bug总结

问题一个很简单的编辑条目的需求,可以看一下实现页面:很简单的用户编辑删除的功能,但是在点击新增的时候确出现了问题,访问权限没有按需下挪key在Vue的虚拟dom算法中的应用key 的特殊 attribute 主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes。如果不使用 key,Vue 会使用一种最大限度减少动态元素并且尽可能的尝试就地修改/复用相同类型元素的算法。而使用 key 时,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素。

2021-04-25 20:23:01 638

原创 前端面试整理(持续更新)

前端面试总结计算机网络状态码:在地址栏里输入一个URL,到这个页面呈现出来,中间会发生什么?网络七层协议应用层表示层会话层传输层网络层数据链路层物理层csrf和xss的网络攻击及防范CSSlink标签和import标签的区别BFC行元素与块元素浮动清除选择器动画实现三栏布局calc属性水平垂直居中nth-child重绘和重排计算机网络状态码:状态码状态码英文名称中文描述200OK请求成功。一般用于GET与POST请求301Moved Permanently永久移动。

2021-04-15 23:34:43 345

原创 侯策《前端开发核心知识进阶》读书笔记——异步

setTimeoutJavaScript 中所有任务分为同步任务和异步任务。同步任务是指:当前主线程将要消化执行的任务,这些任务一起形成执行栈(execution context stack)异步任务是指:不进入主线程,而是进入任务队列(task queue),即不会马上进行的任务。当同步任务全都被消化,主线程空闲时,即上面提到的执行栈 execution context stack 为空时,将会执行任务队列中的任务,即异步任务。这样的机制保证了:虽然 JavaScript 是单线程的,但是对于一

2021-04-13 16:18:10 298

原创 李艺《微信小程序全栈开发实战》(第一章)

李艺《微信小程序全栈开发实战》(第一章)双线程运行机制小程序的特点及开发能力小程序的特点小程序的开发能力开发小程序的一般流程小程序的运行机制小程序双线程视图的持续更新是如何实现的使用setData可能会遇到哪些问题微信为什么要打造一个WXS语言视图线程逻辑线程总结双线程运行机制逻辑层和视图层通过微信底层的weixinJSBridge进行通信,小程序代码中使用的setData改变视图绑定的数据在底层对应执行的是evaluateJavascript这个函数,当视图层的交互触发了,由视图层像逻辑层传递信息时

2021-04-13 14:41:16 2444

转载 [].slice.call(arguments)的理解

[].slice.call(arguments)的理解

2021-04-12 19:22:52 104

原创 Lison《vue技术栈开发实战》(四)

Lison《vue技术栈开发实战》(四)从SplitPane组件谈Vue中“操作”DOM简单两列布局如何让两个div改变宽度鼠标拖动效果v-model和.sync的用法渲染函数和JSX快速掌握render函数函数式组件JSX作用域插槽从SplitPane组件谈Vue中“操作”DOM在以往的前端开发中,我们习惯了使用jQuery来操作DOM,比如修改一个div的宽度,需要获取这个div的DOM,然后修改他的style;但是在Vue中,我们是不应该这样做的,而是要换一种思路,即“数据驱动视图”。简单两列布

2021-04-12 17:18:37 212

转载 跨浏览器开发问题

web前端各浏览器兼容性问题跨浏览器的 web 开发技巧

2021-04-11 15:34:37 189

原创 Lison《vue技术栈开发实战》(三)

Lison《vue技术栈开发实战》(三)Ajax请求实战解决跨域问题封装axios请求拦截响应拦截队列管理使用Mock模拟Ajax请求响应模拟Mock用法精讲数据模板Random方法大全占位符Vue中第三方JS库的使用组件封装基础组件中使用ID值获取DOM或组件实例Ajax请求实战解决跨域问题什么是跨域:之前提到过解决跨域的问题可以设置代理:这个配置会将所有的未找到文件的请求请求代理到proxy指向的路径下面,避免了跨域的问题。第二种方法是在后端设置一些header值来解决跨域。只需要在

2021-04-09 17:56:04 241

转载 使用sort(function(a,b){return a-b})对数组进行排序的原理

使用sort(function(a,b){return a-b})对数组进行排序的原理

2021-04-08 21:21:31 576

原创 Lison《vue技术栈开发实战》(二)

Lison《vue技术栈开发实战》(二)状态管理bus的使用父子组件通信v-model语法糖使用bus通信状态管理Vuex(一)state和getter辅助函数的使用模块中的state和getter的使用使用命名空间时辅助函数的使用状态管理Vuex(二)mutationactionmodule在action调用接口实操async/await使用状态管理Vuex进阶Vuex插件的开发与使用严格模式Vuex+双向绑定状态管理bus的使用父子组件通信父组件向子组件传值一定是通过属性,而子组件向父组件传值一定

2021-04-08 17:46:48 175

原创 Lison《vue技术栈开发实战》(一)

这里写目录标题第01章 使用vue-cli3创建项目使用Vue UI创建、管理项目项目结构目录整理初始文件添加基本配置详解使用代理解决跨域第02章 路由基础篇router-link和router-view组件路由配置JS操作路由重定向和别名第03章 路由进阶篇路由组件传参HTML5 History模式导航守卫路由元信息过渡效果第01章 使用vue-cli3创建项目使用Vue UI创建、管理项目cmd中输入vue ui进行启动,项目结构目录整理创建后的基本目录:初始文件添加看下文件补充后的目录

2021-04-07 17:50:28 276 1

转载 全局监听globalData的某个属性变化,例如监听网络状态切换

全局监听globalData的某个属性变化,例如监听网络状态切换

2021-04-02 21:19:29 307

转载 css如何解决border的重叠问题

css如何解决border的重叠问题

2021-04-01 20:36:06 606

转载 微信小程序自定义头部返回按钮及回到首页样式

微信小程序自定义头部返回按钮及回到首页样式添加链接描述

2021-04-01 12:40:41 1408

原创 Vue开发问题汇总

v-loading首先明确,在vue的众多指令中,现在v-cloack使用得很少,因为在简单项目中,使用 v-cloak 指令是解决屏幕闪动的好方法。但在大型、工程化的项目中(webpack、vue-router)只有一个空的 div 元素,元素中的内容是通过路由挂载来实现的,这时v-cloak 在单文件页面中是不起作用的。此时为了解决加载延时的问题,我们更多的会使用v-loading,v-loading不是vue的指令,而是element-ui提供的指令:官方文档mixinmixin提供了一种非常灵

2021-03-31 18:15:35 805

原创 微信小程序原生socket接口的使用

需求描述在微信小程序开发问题汇总文档中我们提到了应用weapp.socket.io来实现socket的功能,其实微信小程序是提供websocket接口的,具体可以参考文档:官方api文档,有没有办法通过这个官方的接口实现通信功能呢?Socket实现看下完成的socket.js文件:const app = getApp();export default class Socket { constructor(options) { var MAX_CONNECT_TIMES

2021-03-31 16:03:26 1511

原创 微信小程序请求框架搭建

app.js// app.jsimport { login, request, session } from './utils/login';const apis = { prerecord: { prerecord: { add_preordain: { params: ['predata', 'content', 'member', 'sendnotice', 'remind'], method: 'POST' }, update_preordain: { pa

2021-03-30 20:51:40 172

原创 微信小程序自定义组件——手写radio

问题描述微信小程序某些组件暴露的修改特性的接口不够,有些时候需要进行自定义文档内容相关的api文档在这里看一下实例代码:Component({ properties: { min: { type: Number, value: 0 }, min: { type: Number, value: 0, observer: function(newVal, oldVal) { // 属性值变化时执行

2021-03-30 20:46:09 419

原创 JS二维数组赋值问题

背景定义二维数组并赋值 let list = new Array(5).fill(new Array(3).fill(0))此时在给二维数组赋值时使用如下代码:list[2][1] = 2看下赋值结束后的打印结果:未达到预期。ES6解析我们看下阮一峰在es6中对fill的定义:理解这样就不难理解,当我们在fill时,虽然进行了new Array,但填充的是数组的地址,因此在进行赋值的时候,会改变所有指向该数组的值。...

2021-03-21 12:50:36 3857 3

原创 微信小程序两个scroll-view 联动

需求看一下需求,实现一个两周之内录音棚页面的预定,表格左右滑动时左边列不动,表格上下滑动时上边行不动解决方案左边和右边变成一个模块,监听scroll右滑事件代码wxml<!--pages/order-index/order-index.wxml--><view class="container"> <view class="title">录音棚预定</view> <picker bindchange="bindPickerChan

2021-03-18 21:15:01 1066 1

转载 深入理解作用域插槽

深入理解作用域插槽

2021-03-17 22:53:25 93

转载 Element-UI Dialog自定义组件点关闭按钮 报错:Avoid mutating a prop directly since the value will be overwr...

Element-UI Dialog自定义组件点关闭按钮 报错:Avoid mutating a prop directly since the value will be overwr…

2021-03-11 21:01:53 871

转载 Chrome浏览器改变SameSite设置

Chrome浏览器改变SameSite设置

2021-03-04 16:03:58 1401 1

转载 Google浏览器没法打开axure原型

Google浏览器没法打开axure原型

2021-03-04 11:22:06 252 1

转载 import XLSX from “xlsx-style“报错:This relative module was not found: ./cptable in ./node_modules/xlsx

import XLSX from "xlsx-style"报错:This relative module was not found: ./cptable in ./node_modules/[email protected]@xlsx-style/dist/cpexcel.js

2021-01-27 10:42:43 1639 1

转载 解决TextEncoder 和 TextDecoder在IE下不兼容的问题

解决TextEncoder 和 TextDecoder在IE下不兼容的问题

2021-01-19 20:07:39 634

原创 动手搭建一个组件系统

组件化组件的基本概念和基本组成部分为组件添加JSX语法组件的基本概念和基本组成部分组件区别于模块,区别于对象,组件是和ui强相关的东西,它既是对象又是模块,它可以以树形结构来进行组合,并且有一定的模板化的配置的能力。看一下组件和对象的区别:对象的三要素是属性、方法和继承关系。组件在此基础上又多了一些别的概念,其中最重要的是children,没有children就没办法形成树形结构,没有树形结构描述界面的能力就差了很多。组件在对象的基础上加了这么多语义相关的概念,使得组件变成一种非常适合描述ui的

2021-01-17 19:03:14 414 2

转载 windows下php7.2安装redis扩展以及redis测试使用全过程

windows下php7.2安装redis扩展以及redis测试使用全过程

2021-01-06 22:51:43 108

原创 HTML学习笔记

XML和SGMLHTML——XML和SGMLnbsp使用破坏语义,还是要用white space来进行空格的表示lt 尖括号转译HTML标签的语义¡&<"&#161;&amp;&lt;&quot;DOM APIelemet:注意:parentElement和parentNode是百分百相等的。insertAfter可以用appendChild和insertBefore来实现,所以这里就没有额外定义api。事件API冒泡和捕获

2021-01-03 16:38:23 78

原创 CSS学习笔记

CSS2.1语法css2.1语法文档:https://www.w3.org/TR/CSS21/grammar.html#q25.0看下第一条产生式:在这里 charset就是@charset的结构。然后允许出现若干个import,它一定在charset之后,但是在其他的规则之前。接下来支持一个长列表,这个长列表里面有三种结构:ruleset、media和page,其他的都是空白符号。ruleset 就是普通的css规则media就是media标签page主要用于打印的信息CDO、CDC是

2020-12-21 10:26:31 195 2

原创 唐金州的Vue开发实战学习笔记(生态篇)

Vue开发实战学习笔记VuexWhy VuexHow VuexVuex的核心概念和底层原理Vuex的最佳实践Vue RouterWhy Vue Router路由类型及底层原理NuxtNuxt解决的问题Nuxt的核心原理UI组件库对比常用开发工具单元测试VuexWhy Vuexprovide和inject虽然能够实现层层传递的数据管理,但对于一个大的管理系统而言会显得有些繁琐,我们需要一个大型的状态管理系统。How Vuex一个简单的计数器的例子,在main.js中引入Vueximport Vu

2020-12-18 21:13:26 1847

原创 唐金州的Vue开发实战学习笔记(基础篇)

Vue开发实战学习笔记简易的Vue程序组件事件插槽单文件组件双向绑定虚拟DOM与key属性组件更新状态data与属性propsvue的响应式更新计算属性和侦听器计算属性 computed侦听器watchcomputed vs watch生命周期的应用场景和函数式组件生命周期函数式组件指令provide/inject跨层级组件实例简易的Vue程序在vscode中新建一个html文件,输入html5快捷生成代码:<!DOCTYPE html><html lang="en">&l

2020-12-17 21:51:12 1689 1

转载 js 双线性插值 双三次插值法 实现

js 双线性插值 双三次插值法 实现

2020-12-10 17:42:24 451

原创 Echarts热力图自定义底图

需求看下本次的需求:希望实现如下图的热力图的展示:

2020-12-08 17:31:15 2626

原创 echarts实现GIS可视化——热力图

看一下热力图实现的案例:效果图:示例代码&注释:$.get(ROOT_PATH + '/data/asset/data/hangzhou-tracks.json', function (data) { var points = [].concat.apply([], data.map(function (track) { return track.map(function (seg) { return seg.coord.concat([1])

2020-11-27 16:32:04 6053 1

原创 javascript实现UTF-8编码

编码原理:https://www.cnblogs.com/doublenet/p/5616451.html实现代码:const UTF8_Encoding = (string) => { let utf8_arr = []; for (let objIndex in string) { let code = string.charCodeAt(objIndex) if (code >= 0 && code < 127) {

2020-11-13 19:54:39 1776

svgmap_demo.zip

echarts2.0实现热力图的代码,调整源码的渲染的时候按照权重进行颜色的选择,并且实现了摇杆的功能,因为涉及到源码的修改,所以仅供参考

2020-12-08

空空如也

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

TA关注的人

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