自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(260)
  • 资源 (1)
  • 论坛 (1)
  • 收藏
  • 关注

原创 flutter中的canvas - 开篇

屏幕就像一张白纸,我们可以用 Flutter 提供的绘制 API将绘制内容显示在屏幕上。绘制需要的要素纸: Canvas 画布对象笔: Paint 画笔对象形: Path 路径对象色: Color 颜色对象搭建绘画的舞台[1]. 搭建一个最简demo,显示出白屏[2]. 让屏幕[全屏]并[横屏]显示[3]. 通过 Flutter 的绘制 API 画出一个[半径 = 10 的黑圈]。1.主程序使用了自.

2020-11-25 09:32:42 14

原创 flutter自定义跟随组件,主要场景为下拉选择菜单

import 'package:flutter/material.dart';import 'package:flutter_screenutil/flutter_screenutil.dart';/// 例:///```dart///EolFollowerWidget eolFollower = EolFollowerWidget();///eolFollower.target(/// context,/// child: Row(/// mainAxisAlignment: Ma

2020-10-23 10:45:28 45

原创 Flutter 自定义通知弹窗(Toast)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入RaisedButton( onPressed: () { EolToast.toast(context, "

2020-10-15 17:31:56 48

原创 Flutter之开屏广告缓存本地方案(无插件版),兼容 IOS、安卓

问题:开屏广告图使用网络加载的话,会出现一个加载时的白屏。为了处理这个白屏实现开屏到广告的顺利过渡;解决方案的整体思路如下:网络请求图片文件 将图片文件转换成Uint8List 将Uint8List保存成String,存在全局数据管理中 开屏广告将图片数据从全局数据管理中取出,再转成Uint8List 使用Image.memory() 进行图片加载核心思路是:使用Image.memory() 来省去图片加载的时间。main.dart的核心代码如下:var response

2020-09-02 11:06:59 105

原创 Flutter 流式布局之Wrap详解

WrapWrap可以为子控件进行水平或者垂直方向布局,且当空间用完时,Wrap会自动换行,也是常说的流式​布局。创建多个子控件做为Wrap的子控件,代码如下:<span style="color:rgba(0, 0, 0, 0.8)"><span style="color:#cccccc"><code>Wrap( children: List.generate(10, (i) { double w = 50.0 + 10 * i

2020-08-25 17:38:28 105

原创 详解正则中先行断言的用法

/x(?=y)/匹配'x'仅仅当'x'后面跟着'y'.这种叫做先行断言。例如,/Jack(?=Sprat)/会匹配到'Jack'仅当它后面跟着'Sprat'。/Jack(?=Sprat|Frost)/匹配‘Jack’仅当它后面跟着'Sprat'或者是‘Frost’。但是‘Sprat’和‘Frost’都不是匹配结果的一部分。先行断言详解```javascriptlet str = "a123"str.match(/a(?=123)/)// 会匹配到a=> astr.mat..

2020-07-06 10:15:57 95

原创 flutter项目中闪退问题的分析与解决方案

问题场景在安装了某个插件之后,或者从仓库里拉代码到本地之后,或者升级你的flutter版本之后。总之一定是当执行了flutter packages get之后,出现了app闪退的问题;ps: 要注意的是,此时终端并没有显示任何的错误信息。并且停留在 Installing app.apk 这一步。就像上面这样如果你也碰到这个问题,恭喜你,下面的办法可以帮你解决这个问题请严格按照下面步骤执行首先要关闭你的flutter项目 找到flutter SDK 下的.pub-cach.

2020-07-03 11:45:54 700

原创 history对象中replaceState详解

忙呀忙

2020-05-21 15:26:08 121

原创 cordova.inappbrowser在IOS13打不开的情况解决

被这个BUG耽误我一天。IOS13 系统中 打不开内置浏览器的情况最终在官方的issue中得到解决。https://github.com/apache/cordova-plugin-inappbrowser/issues/582官方说使用 master版本即可。https://github.com/apache/cordova-plugin-inappbrowser手动下载上面...

2020-03-04 21:05:17 1119 2

原创 观察者模式(发布者-订阅者模式)

设计模式是被发现的,而非发明。观察者模式(发布者-订阅者模式)定义观察者模式(又称发布者-订阅者模式)定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。设计原则找出程序中变化的方面,然后将其跟固定不变的方面相分离针对接口编程,而不是针对实现编程更多的使用组合,少用继承为了交互对象之间的松耦合设计努力,降低对象之间的互相依赖使...

2020-02-15 13:42:16 165

原创 yarn 安装node-sass 失败处理方案

不要再去改yarn的源了!!!不要再去改yarn的源了!!!不要再去改yarn的源了!!!重要的事情说三遍。解决方案:修改node-sass 源。1. 修改源yarn config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ -g 2. 安装yarn install最后 如...

2020-01-19 19:02:01 1102

原创 css实现点击事件穿透上层元素的效果

css用来点击穿透上层元素,实现点击下层元素的效果;pointer-events: none;最近越来越忙了。欠的越来越多了。。。。。。。。。。。。

2019-12-30 11:28:26 479

转载 flutter 获取某组件坐标

1.首先先需要对控件进行渲染初始化GlobalKey :GlobalKey anchorKey = GlobalKey();2.在需要测量的控件的下面添加key:child: Text("点击弹出悬浮窗", style: TextStyle(fontSize: 20), key: anchorKey),3.获取控件的坐标:RenderBox renderBox = an...

2019-11-27 10:28:34 324

原创 本地webpack测试DEMO

// cnpm、npm、yard 依照自己安装的使用。此次演示使用cnpm // 安装webpack:cnpm i webpack -D// 在src/test.js文件中随意编写部分代码// 根目录创建webpack.cogfig.js内容如下 module.exports={ entry:'./src...

2019-09-16 09:45:24 85

原创 静态页面中使用ES6的兼容性解决方案

由于广大用户使用的浏览器版本在发布的时候也许早于ES6的定稿和发布,而到了今天,我们在编程中如果使用了ES6的新特性,浏览器若没有更新版本,或者新版本中没有对ES6的特性进行兼容,那么浏览器肯定无法识别我们的ES6代码,好比浏览器根本看不懂我写的let和const是什么东西?只能报错了。这就是浏览器对ES6的兼容性问题。如何解决浏览器的兼容问题<script> ...

2019-07-29 14:56:08 316

转载 axios 在项目中的应用

提到axios都不陌生,由之前的 XMLHttpRequest ->$.ajax-> Fetch 发展,看来 Promise 是趋势,而项目中也是由vue-resource的this.$http"净化" 成了 axios ,但实际项目中不只是引用 axios 发送请求那么简单,往往还需要进行封装,以下就分享下我们项目中使用 axios 都做了哪些事。当然不涉及到项...

2019-06-24 10:07:24 290

原创 display:table和display:table-cell垂直居中显示

 display的table和table-cell一般情况下用的不多,所以很少有人去关注它,但他们两个联手起来会给你惊喜!这里抛出这样一个问题,如下,让块里的多行文字垂直居中?一说到垂直居中就会想到,单行文字垂直居中line-height等于height;块级元素垂直居中,position定位或者flex布局。但这里我介绍display:table和table-cell是如何让多行文字垂直居中...

2019-05-14 10:55:55 1728

原创 vue解决在父组件中无法修改子组件样式问题

vue开发中,父组件添加scoped之后。解决在父组件中无法修改子组件样式问题  在vue的开发中,我们需要引用子组件,包括ui组件(element、iview)。但是在父组件中添加scoped之后,在父组件中书写子组件的样式是无效果的。去掉scoped之后,样式可以覆盖。但这样会污染全局样式,为了解决这个问题,vue-loader新增书写方式。这样的写法及修改了子组件的样式,又不会污染全局样...

2019-04-11 11:24:29 674

原创 vue利用空白页进行路由刷新

// 这里需要使用replace ,防止浏览器记录历史// 使用页面,在methods中添加函数refresh () { this.$router.replace({ path: '/refresh', query: { t: Date.now() } })}// refresh.vue<script>export d...

2019-04-08 11:47:43 499

原创 VUE使用锚点的解决方案--scrollIntoView

scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数,那么窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部不一定齐平<div class=...

2019-04-03 10:49:37 908

原创 JS部分数据操作函数

1.扁平化n维数组1.终极篇[1,[2,3]].flat(2) //[1,2,3][1,[2,3,[4,5]].flat(3) //[1,2,3,4,5][1[2,3,[4,5[...]].flat(Infinity) //[1,2,3,4...n]Array.flat(n)是ES10扁平数组的api,n表示维度,n值为Infinity时维度为无限大2.开始篇funct...

2019-03-20 17:37:05 120

原创 实现一个网页加载进度loading

loading随处可见,比如一个app经常会有下拉刷新,上拉加载的功能,在刷新和加载的过程中为了让用户感知到load的过程,我们会使用一些过渡动画来表达。最常见的比如“转圈圈”,“省略号”等等。网页loading有很多用处,比如页面的加载进度,数据的加载过程等等,数据的加载loading很好做,只需要在加载数据之前(before ajax)显示loading效果,在数据返回之后(aj...

2019-03-20 16:38:13 358

原创 使用 createObjectURL 实现图片实时展示

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>checkbox css change</title><script src="http://www.jq22.com/jquery/jquery-1.7.1.js"></script&...

2019-03-20 13:38:59 412

原创 THREE.js 几何形状用法

一、立方体THREE.CubeGeometry(width, height, depth, widthSegments, heightSegments, depthSegments);THREE.CubeGeometry(x方向上的长度, y方向上的长度, z方向上的长度, x方向上分段数, y方向上分段数, z方向上分段数);分段是对六个面进行分段,而不是对立方体的体素分段,因此在立方...

2019-03-11 22:20:19 379

原创 Chrome浏览器加载本地文件

1、Chrome浏览器加载本地文件一般来说,为了安全起见,浏览器是不能通过load方法来加载本地文件的,load方法只能加载远程服务器上的文件。在浏览器默认的情况下,试图加载一个本地文件,会出现交叉域访问的错误,如下图:为了解决这个问题,我们有两种方式,第一种是在本地搭建一个web服务器,例如tomcat,将需要加载的数据放到服务器中,通过url地址来访问。另一种方法更简单,就是对...

2019-03-08 11:55:51 10744 6

原创 Linux中脚本的使用方法

Linux中脚本的使用方法一、前言 关于Linux中的脚本的用法,一直没有时间去好好地总结,正好今天下雨,就好好的整理一下思路吧,其实精通了一门语言,比如C语言,学习其他语言需要的成本是非常少的,同样的脚本作为一种比较简易的语言,只要知道了语法,我们在通过几个例子好好的理解和掌握一下常规的使用,这样就等于是入门了,之后要想精深的话,其实更应该学习一下Linux中的命令,比如三剑客、文件操...

2019-03-02 13:14:29 313

原创 JS防抖代码、节流代码

防抖:触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间;例子:当使用如下防抖代码,input输入框监听了input事件后,可以再指定时间内不触发多次input事件;function debounce(fn) { let timeout = null; // 创建一个标记用来存放定时器的返回值 return function (...

2019-02-28 17:48:44 1387

原创 VMwere 本机代理转发,局域网共享

点击”编辑“-&gt;”虚拟网络编辑器“,如图。 步骤阅读 2 选择”NAT“,然后点击”NAT设置“,如图。 3 接下来点击”添加“。 4 在弹出来的界面中分别填入主机端口,虚拟机IP,虚拟机端口,如图。 5 确定后,我们就将虚拟机中的80号端口映射到宿主机的8086号端口了,如图。以后我们可以在共网上访问本机的8...

2019-02-28 11:14:50 370

原创 JS处理yyyy-mm-dd 格式时间

摘自码神博客var dt = new Date();dt.setMinutes(dt.getMinutes() - dt.getTimezoneOffset()); // 修正时区偏移var date = dt.toISOString().slice(0, -5).replace(/[T]/g, ' ');console.log(date); // =&gt; 2016-03-25 ...

2019-02-15 16:43:57 293

原创 TS在线编译ES5工具

TypeScript在线编译ES5 工具地址:在线转换地址

2019-01-09 15:58:49 5766 1

原创 VUE项目,前端生成验证码

// 前端生成验证码// 全局挂载 import GVerify from '@/assets/js/util/GVerify'// Vue.prototype.GVerify = GVerify// 组件内使用 this.verifyCode = new GVerify("你的元素ID") // 验证验证码 this.verifyCode.val...

2018-12-29 10:11:52 2137

原创 canvas图片压缩、上传

图片压缩功能函数function CompressImg(imgFile) { var _that = this; _that.convertBase64UrlToBlob = function (urlData, type) { var bytes = window.atob(urlData.split(',')[1]); ...

2018-12-28 15:25:37 149

转载 VUE动态移除缓存实例

 思否上看到一个老哥解决这个问题的方法,原文地址:https://segmentfault.com/a/1190000015845117此处只放重点如下:keep-alive 默认不支持动态销毁已缓存的组件,所以此处给出的解决方案是通过直接操控 keep-alvie 组件里的 cahce 列表,暴力移除缓存://使用Vue.mixin的方法拦截了路由离开事件,并在该拦截方法中实现...

2018-12-26 11:35:19 3971 1

原创 获取当前鼠标焦点

//获取当前鼠标焦点var triggerElement = document.activeElement// 获取当前鼠标焦点的label的属性triggerElement.getAttribute('label') != "访客人数" 

2018-12-13 22:06:37 2385

原创 获取JS数据具体数据类型

let arr = [1,2,3,4]//用这个方法来获取数据的具体类型Object.prototype.toString.apply(arr) //[object Array]//用这个只能获取object,无法具体的数据类型typeof arr // object ...

2018-12-04 13:47:12 312

原创 filter、map、forEach配合实现定向处理数组数据

//forEach 不可以使用return等语句跳出循环,所以就配合filter、map使用,来省略多余的循环操作[1,2,3,4,4,5,6,76] .filter((a,b)=&gt;a&gt;4) //过滤比4大的数据 .map(_=&gt;_) // 放到新的数组中 .forE...

2018-11-30 15:37:17 271 3

原创 平均分割数组函数

/* * 将一个数组分成几个同等长度的数组 * array[分割的原数组] * size[每个子数组的长度] */function sliceArray(array, size) { var result = []; for (var x = 0; x &lt; Math.ceil(array.length / size); x++) { var sta...

2018-11-14 10:15:59 407

原创 自己封装axios

import {URLconfig} from '@/assets/js/config'import axios from 'axios'async function myaxios(option){ //ajax提交方法 let method = option.method || 'post' //判断地址 let url = `${URLconfig.HTTPURL}/...

2018-11-08 17:19:24 393

原创 十月最后一天,补上一篇占位博客

十月最后一天了,忙的跟狗一样,补上这篇博客,后期有啥内容我在改

2018-10-30 13:47:11 116

原创 iphone 处理时间的兼容问题

1 var date = new Date('2016-11-11 11:11:11');2 document.write(date);最近在写一个时间判断脚本,需要将固定好的字符串时间转换为时间戳进行比较,在做的时候个人习惯使用chrome作为调试工具,代码基本完成之后,一切正常;使用其他浏览器访问,好嘛,IE跟safari都不兼容,返回错误"Invalid Date"。想着...

2018-09-12 15:05:49 482 1

JavaScript可选放大倍数的的对比图放大镜

将两张图片分别定义class为:rightImg与laftImg,放到两个DIV容器中。 图片布局需调整为左右分布。 使用如下JS即可,//第一个参数是对应的对比图class 第二个参数是放大倍数 $(document).ready(function(){ $(".laftImg").BUP("rightImg",1); $(".rightImg").BUP("laftImg",1); })

2017-12-07

华洛的留言板

发表于 2020-01-02 最后回复 2020-03-05

空空如也

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

TA关注的人 TA的粉丝

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