- 博客(18)
- 资源 (2)
- 收藏
- 关注
原创 自定义图片或元素不规则形状--clip-path初探
clip-pathCSS属性使用裁剪方式创建元素的可显示区域。区域内的部分显示,区域外的隐藏。 本文重点讲其中path()的用法,其他见文末。 目标:剪切一个如下图所示的形状,css内容如下。 { width: 390px; height: 200px; background-color: red; clip-path: path('M 100 200 A 5,5 0 1 1 100,0 L 300,0 390,10...
2021-08-10 16:24:40
1787
1
转载 IIFE(立即调用函数表达式)
IIFE( 立即调用函数表达式)是一个在定义时就会立即执行的 JavaScript 函数。 (function () { statements })(); 这是一个被称为 自执行匿名函数 的设计模式,主要包含两部分。第一部分是包围在 圆括号运算符 () 里的一个匿名函数,这个匿名函数拥有独立的词法作用域。这不仅避免了外界访问此 IIFE 中的变量,而且又不会污染全局作用域。 第二部分再一次使用 () 创建了一个立即执行函数表达式,JavaScript 引擎到此将直接执行函数。 示例 ...
2021-07-14 16:31:05
364
转载 js构造函数详解
一、js函数 首先弄明白何为函数呢,按照犀牛书的说法,函数简单的说就是重复执行的代码块。函数是这样的一段JavaScript 代码,它只定义一次,但可能被执行或调用任意次。 函数的定义方式: 1.声明式函数定义: function 函数名 (){};这种定义方式,会将函数声明提升到该函数所在作用域的最开头,也是就无论你在这个函数的最小作用域的那儿使用这种方式声明的函数,在这个作用域内,你都可以调用这个函数为你所用。 2.函数表达式:let fun = function(){.
2021-06-11 16:46:57
1584
转载 理解VUE双向数据绑定原理和实现
相关知识点: Object.defineProperty方法 重绘、回流;什么情况下触发重绘或回流? 碎片化文档(DocumentFragment) 数据劫持(通过碎片化文档劫持数据,劫持各个节点,节点被劫持之后,原dom节点就会被删除。) 发布订阅模式 实现一个真正的双向绑定原理。 1、实现的效果: 数据: var vm = new Vue({ el: 'app', data: { text: 'hello world' } }) ...
2021-06-11 16:00:47
397
转载 ERESOLVE unable to resolve dependency tree
出现原因 升级 npm 至v7.6.2后, 运行npm i安装依赖,报错ERESOLVE unable to resolve dependency tree 环境 node: 14.15.0 npm: 7.6.2 Angular 项目 错误原因 等依赖项中存在无法解决的冲突,npm@7现在尝试安装它们,而npm@6没有。 解决方案 使用npm i --legacy-peer-deps 参考 [BUG] ERESOLVE无法解析依赖关系树(postcss-load-confi...
2021-06-10 15:54:46
48423
17
转载 forEach、for in 、 for of三者的区别
在开发过程中经常需要循环遍历数组或者对象,使用最多的方法forEach、for…in 、 for…of,整理一下他们的异同点 for循环 其实除了这三种方法以外还有一种最原始的遍历,自Javascript诞生起就一直用的 就是for循环,它用来遍历数组 for循环中可以使用return、break等来中断循环 forEach 对数组的每一个元素执行一次提供的函数(不能使用return、break等中断循环),不改变原数组,无返回值undefined。 let arr = ['a', 'b', 'c
2021-06-07 18:08:47
253
转载 观察者模式和发布订阅模式
观察者模式(Observer Pattern) 观察者模式定义了对象间的一种一对一的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知,并自动更新。观察者模式属于行为型模式,行为型模式关注的是对象之间的通讯,观察者模式就是观察者和被观察者之间的通讯。 ...
2021-06-07 17:09:30
283
原创 浏览器的多进程和多线程
参考: https://blog.youkuaiyun.com/z591102/article/details/108235460 https://segmentfault.com/a/1190000012960187 浏览器是多进程的,几乎每一个tab标签页都有其独立进程(例外情况:多个空白 tab 标签会合并成一个进程)。 每个进程都可能有多个线程协同工作。 浏览器通常有以下线程: 1、GUI渲染线程: 负责渲染页面,解析html、css等构成DOM树,当页面需要重绘(Repaint)或由于某种操作引
2021-05-21 09:43:22
1093
转载 vue router 如何使用params query传参,以及有什么区别
vue router 如何使用params query传参,以及有什么区别 写在前面: 传参是前端经常需要用的一个操作,很多场景都会需要用到上个页面的参数,本文将会详细介绍vue router 是如何进行传参的,以及一些小细节问题。有需要的朋友可以做一下参考,喜欢的可以点波赞,或者关注一下,希望可以帮到大家。 本文首发于OBKoro1的个人blog:obkoro1.com Vue router如何传参 params、query是什么? params:/router1/:id ,/router
2021-05-20 10:16:51
224
原创 router路由跳转使用query传递参数刷新后数据无法获取,变成[object object]
跳转路由使用的是history.push,在query中添加了要传给详情页的值,如下: history.push({ pathname: '/menu/detail', query: { comCodeOption: this.state.comCodeOption, } 其中comCodeOption格式如下: [ { "comCode": "23", "comName": "黑龙江分公司" }, {
2021-05-19 18:32:18
1768
转载 默认导出与命名导出
此文章来源于:Var_YanGuangYing 默认导出: 对于导出内容的命名无关紧要,只要给定名称即可,但默认导出只有一个。 命名导出: 导入时,名称必须与导出的名称一致,可以到处多个 1、默认导入示例: // B.js--默认导入 import A from './A' // A.js--默认导出 export default 42 以上这种默认导入仅限A.js文件中有默认导出时才有效。 在以下情况,导入时分配的名称并不重要: // B.js ...
2021-04-01 20:44:25
1237
原创 隐藏的输入框调起软键盘问题--ios/安卓
移动端 验证码/密码 输入框实现--安卓/ios适用 基于以上验证码实现方式 的后期填坑来了,以下移动端 验证码/密码 输入框实现--安卓/ios适用统称“上篇文章” 最近仿照我的上篇文章又新写了个验证码的小页面,有些微的不同 输入身份证后四位,由于可能有X字母,所以隐藏input的type不能设置为number了,懒惰的我直接删掉了type属性(造坑开始) 且因为上次研究时漏掉了一些知识点,也造了一波坑,以下一一列举。 问题1、四位空格输入,1234,但是每次输入下一个数字,前面的内容都..
2020-09-24 17:24:48
2486
1
原创 二维码有效期要注意什么
由于所用工具生成二维码是没法带有效期限的 只能在数据库中存入 “二维码到期时间” 在扫码之后获取到期时间,与当前时间对比确认是否过期 这里要注意!!! 安卓没影响,但是ios有一个坑等着你-----ios不兼职 yyyy-MM-dd HH:mm:ss 这种时间格式 需要把-替换成/,即最终格式为yyyy/MM/dd HH:mm:ss 废话不说,贴代码: // DateValid是数据库中存的时间戳(数据库字段类型为timestamp) var now = new Date(); var dv
2020-08-04 12:35:42
1851
原创 specified class is an interface
记一次自己坑自己的心酸经历 项目中有个mybatis自动生成工具 只要配置好数据库和账号密码以及一堆地址(我并不完全理解地址是干啥的) 只知每次生成后位置都是不对的,并不会覆盖原始位置mapper的xml文件和dao层,po层 因此还需手动将新的xml内容复制到原始xml对应文件中 锅来了 好久不用的我,忘记了还会生成dao层和po层 再加上代码管理工具,真的真的很坑人,它不给我显示新增的文件,只能手动提升 自动生成并替换后,我手脚麻利的删掉了mappe中重复的xml文件 就欢..
2020-07-17 15:02:43
1252
原创 移动端 验证码/密码 输入框实现--安卓/ios适用
先贴图,需要实现的效果是这样的。 实现思路有两个: 1、用6个input,输入一个数字后将focus给下一个输入框。 2、用一个input和6个span,input隐藏,用span显示。 现在大部分都是使用的第二种方法。(当然,如果你能说服产品也可以只用一个普通的input输入框,就什么都不用考虑了) 两种方案遇到的坑,以及优缺点,如下: 方案一:6个inp...
2019-07-05 20:32:28
4078
4
转载 Struts2中package,action,result,method配置详解
转自博客园No.uno的文章。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds...
2019-02-12 14:48:58
476
原创 AndroidStudio小菜鸟用真机调试心酸笔记
打开你的设备管理器(见第三步)找找有没有Android adapter ADB Interface或者别的什么ADB Interface。有的话,你可以关掉这个页面了一、首先你要建一个工程二、下载驱动缺什么驱动?百度AndroidStudio真机调试,发现别人家的设备管理器中有个Android adapter ADB Interface。百度android adb interface 驱动下载(有...
2018-02-10 11:18:08
1074
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅