- 博客(97)
- 收藏
- 关注

原创 vue学习之:自定义指令
自定义指令理论内容介绍注册一个全局指令注册一个局部指令钩子函数钩子函数参数动态指令参数对象字面量实际运用组织全局自定义指令自定义局部指令理论内容介绍除了默认设置的核心指令,Vue 也允许注册自定义指令。自定义指令好就好在可以很方便的将大量重复的事情通过一个简短的指令来实现。使用场景:对 DOM 元素进行底层操作,比如:文本框获得焦点当页面加载时,想要输入框直接获得焦点,下面指令指令可...
2020-04-15 17:25:46
858
1

原创 vue学习之:一篇搞懂vue的指令v-model,v-if 和 v-show
指令什么是指令参数修饰符常用指令v-modelv-bindv-forv-onv-if 和 v-showv-text可以用于提升性能的指令v-oncev-pre什么是指令指令 (Directives) 是带有 v- 前缀的特殊属性,指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM。通过特定的指令,完成特定的事。参数一些指令能够接收一个“参数”,在指令名称之后以冒号...
2020-04-14 15:55:53
5527
1
原创 uni-app pages/share/reg.js 已被代码依赖分析忽略,无法被其他模块引用。你可根据控制台中的【代码依赖分析】告警信息修改代码,或关闭【过滤无依赖文件】功能
在HBuilderX新建了文件,运行微信小程序报错,提示:pages/share/reg.js 已被代码依赖分析忽略,无法被其他模块引用。你可根据控制台中的【代码依赖分析】告警信息修改代码,或关闭【过滤无依赖文件】功能。关闭 HBuilderX 和 微信开发者工具,重新打开,错误消失。查看微信开发者工具中文件存在,页面路径正确。
2025-03-27 11:00:17
187
原创 AST和Virtual DOM
AST(Abstract Syntax Tree,抽象语法树)是对编程语言的语法结构的描述,而虚拟dom是对dom节点的描述。AST表示的是源代码的语法结构,而virtual dom表示的是页面上需要现实的dom元素及其状态。而虚拟Dom 只会在 运行时出现,用来描述整个 DOM 树,每个render周期会产生一次虚拟Dom。AST 只会在 编译阶段 出现。它主要用来描述 template 模版。
2025-02-14 09:45:02
205
原创 HTTP2有哪些升级
TCP协议的特点是慢启动,即一开始传输的数据量少,一段时间后达到传输的峰值,而上面这种做法,会导致大量的请求在TCP达到传输峰值前就被销毁了。在这种情况下,多次请求响应可以共享同一个TCP连接,这不仅减少了TCP的握手和挥手时间,同时可以充分利用TCP慢启动的特点,有效的利用带宽。于是,导致了一些后发出的请求,无法在处理完成后响应,产生了等待的时间,而这段时间的带宽可能是空闲的,这就造成了带宽的浪费。不仅如此,由于传输时是以帧为单元传输的,无论是响应还是请求,都可以实现并发处理,即不同的传输可以交替进行。
2025-02-14 09:38:17
810
转载 CSS 属性计算过程
你是否了解 CSS 的属性计算过程呢?上面的 CSS 代码中,p 是元素选择器,color 就是其中的一个 CSS 属性。但是要说 CSS 属性的计算过程,还真的不是很清楚。没关系,通过此篇文章,能够让你彻底明白什么是 CSS 属性的计算流程。
2025-01-15 13:20:59
33
原创 https网站 请求http图片报错:net::ERR_SSL_PROTOCOL_ERROR
场景:https网站,请求http图片资源报错:net::ERR_SSL_PROTOCOL_ERROR。
2024-11-12 13:39:30
2670
2
原创 非常有用的 30 个 JavaScript 代码片段,值得收藏!(持续更新)
然后,将其转换为tolowerCase(),将(’‘)拆分为单独字符,reverse(),join(’‘),与原始的非反转字符串进行比较,然后将其转换为tolowerCase()。使用slice(0,1)和toUpperCase()大写第一个字母,slice(1)获取字符串的其余部分。使用按位左移运算符(«)和toString(16),然后padStart(6,“0”)将给定的RGB参数转换为十六进制字符串以获得6位十六进制值。使用Math.abs()将逻辑扩展为负数,使用模(%)运算符进行检查。
2024-08-05 17:33:45
525
1
原创 「面试必看」Vue百题斩~ Vue数据响应式原理的四个核心模块
当某个函数执行的时候,用到了响应式数据,响应式数据是无法知道是哪个函数在用自己的,因此,Vue通过一个巧妙的方法来解决这个问题。的函数,里面用到了a,b,c,d,那么a,b,c,d四个属性都会记录依赖,于是下面的代码将触发四次。由于遍历时只能遍历到对象的当前属性,无法检测到将来对象动态增加或删除属性的属性,因此Vue提供了。这里有两个问题,就是读取属性的时候做什么事,属性变化的时候要做什么事,这个问题需要依靠。等于自己,然后再去执行函数,当函数执行时,使用到了响应式的数据,发生了依赖记录。
2024-08-05 17:33:12
814
原创 「面试必看」JS百题斩~ 终于明白了原型 与 原型链
console.log(this.name + "给你打招呼");var u1 = new User("小明", 20);//实例化对象 u1var u2 = new User("小红", 19);//实例化对象 u2var u3 = new User("小蓝", 30);//实例化对象 u3上图中,通过构造函数可以创建一个用户对象。这种做法有一个严重的缺陷,就是每个用户都拥有一个sayHi方法,但是对于每个用户而言,sayHi方法都是一样的,没必要为每个用户单独生成一个。
2024-06-12 17:52:13
383
原创 「面试必看」JS百题斩~ typeof 、instanceof 与 Object.prototype.toString 区别(简单易懂)
首先,让我们先了解一下JavaScript的数据类型,分为两类:基础类型:Undefined,Null,Boolean,Number,BigInt,String,Symbol引用类型:Object,Array,FunctionSymbol 是ES6中引入的一种原始数据类型,表示独一无二的值。BigInt(大整数)是 ES2020 引入的一种新的数据类型,用来解决 JavaScript中数字只能到 53 个二进制位。为了与 Number 类型区别,BigInt 类型的数据必须添加后缀n。
2024-06-04 18:22:14
1067
1
原创 「面试必看」JS百题斩~秒懂数据的作用域(超详细)
当js中使用一个变量的时候,首先会尝试在当前作用域下去寻找该变量,如果没找到,再到它的上一层作用域找,一直找到该变量或者已经到了全局作用域,如果在全局作用域仍然找不到该变量,严格模式下会直接报错。定义:作用域是运行时代码中的变量,函数和对象的可访问性。注意,变量的作用域,在创建时就已经确定好了,而非调用阶段确定的,所以某个作用于的上层作用域指的是包裹它的作用域,而非调用。函数作用域:函数作用域也叫局部作用域,指声明在函数内部的变量,函数的作用域一般只在固定代码片段中可访问到,例如函数内部。
2024-06-04 18:21:46
702
原创 你不知道的 CSS 之包含块
没错,因为我们对 div1 进行了定位,因此它会应用非根元素包含块计算规则的第三条规则,寻找离它最近的 position 的值不是 static 的祖先元素,不过显然 body 的定位方式为 static,因此 div1 的包含块最终就变成了初始包含块。首先 HTML 作为根元素,对应的包含块就是前面我们所说的初始包含块,而对于 body 而言,这是一个 static 定位的元素,因此该元素的包含块参照第一条为 html,以此类推 div1、p1、p2 以及 em1 的包含块也都是它们的父元素。
2024-05-23 18:33:07
742
原创 CSS transform 三大属性 rotate、scale、translate
transform 属性向元素应用 2D 或 3D 转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜。
2024-05-23 18:26:22
2024
原创 微信小程序 request 配置了服务器域名后 发布体验版无法访问
如果是PCI DSS 不合规,查看是否支持了 TLS1.0协议被判定为不合规,现在网络上很多部署 HTTPS 的教程里面都用到 TLSv1.0 协议,所以如果我们在配置 SSL 的时候如果还是用到 TLSv1, 就会出现 PCI DSS 不合规。既然知道了问题所在,那么解决办法也就很简单了,直接在 SSL 配置中禁用 TLSv1.0。在微信小程序公众平台配置了测试服务器域名后,发布了体验版进行测试,发现网络请求不通,打开调试也依然无法访问。2.检查 ssl 证书链是否有问题,
2024-04-29 13:46:39
1956
原创 JS符号之??、?.、+、!、!!、!!+
" + " 能将 字符串数字 直接转为 number 类型 ,如果不是字符串数字,会变成 NaN 类型。)是一个逻辑操作符,当左侧的操作数为 null或者 undefined时,返回其右侧操作数,否则返回左侧操作数。. 用于读取对象链深处的属性的值,而不必明确验证链中的每个引用是否有效。” 做 类型判断 ,可以用 “!只有当左侧为 null 或者 undefined 时,才会返回右侧的数据。+” 能将 字符串数字 快速转换为 Boolean 类型。” 的用法是比较灵活的 ,它除了做 逻辑运算 ,
2024-04-23 18:43:41
699
原创 微信小程序 map 自动缩放显示所有给定经坐标点 设置include-points不生效
问题:设置了三个坐标,绘制了线路,需要视野里显示完整路线。但是按照官网给的include-points属性设置,发现无效果。解决办法一:创建 map 对象,用includePoints方法来主动触发。如果微信开发者工具还不生效,异步设置includePoints。
2024-02-29 14:42:15
1815
原创 [Vue-Treeselect Warning] Unloaded branch node detected. “loadOptions“ prop i
【代码】[Vue-Treeselect Warning] Unloaded branch node detected. “loadOptions“ prop i。
2023-12-23 10:16:46
1533
原创 微信开发者工具(调试器加载错误,从任务栏打开可能会导致该问题)
更新了最新的微信开发者工具之后,打开调试项目时报错:调试器加载错误,从任务栏打开可能会导致该问题将下方工具栏的微信小程序开发者工具取消固定,并重新开启后,就可以连接调试了。
2022-12-08 09:04:19
2388
1
原创 vite C:\Users\dell\AppData\Roaming\npm-cache\_npx\12088\node_modules\create-vite\index.js:3
再去 npm init vite@latest 安装新建项目。node版本为12.8.0。
2022-11-30 13:08:25
1588
1
原创 vue-router连续跳转同一路由页面,页面不刷新的解决办法
跳转当前路由不会刷新页面,但route路由数据已经发生了变化,那么我们使用vue的watch去检测这样的变化,然后再重新请求数据请求接口即得到想要的数据。当前在 /order/detail 页面,继续跳转当前页面,传参不同。
2022-10-11 09:35:57
3828
原创 Lodop插件未安装 页面卡死 点击无反应
点击打印,LodopFuncs.js 会首先检查是否安装了Lodop插件,只要未安装Lodop,页面头部会进行提示,提示过后,页面的其他操作都无任何响应了。如图所示,注释掉LodopFuncs.js中下面这个语句。自己在页面里面检测是否安装,并做安装提示。pc项目使用到Lodop打印。
2022-09-27 10:47:41
1924
原创 Uncaught (in promise) Error: [DINGTALK-JSAPI] ERROR 4040: Do not support the current environment:not
js钉钉登录,Uncaught (in promise) Error: [DINGTALK-JSAPI] ERROR 4040: Do not support the
2022-08-26 17:16:34
5018
原创 vue 报错Invalid prop: type check failed for prop “span“. Expected Number, with value 2, got String wit
vue 报错Invalid prop: type check failed for prop "span". Expected Number, with value 2, got String wit
2022-08-16 15:10:54
3836
原创 [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent
Vue报错
2022-07-05 12:54:54
2016
原创 has been blocked by CORS policy: The request client is not a secure context and the resource is in..
chrome升级后跨域问题
2022-06-08 14:58:24
26426
13
转载 elementUI中的el-image 加载失败原因和解决方案
最近使用elementUI的el-image发现经常会出现加载src失败的情况,问题估计就是el-image的src路径一旦初始化加载失败的话就没有异步刷新:解决办法:1.给:src设置默认值,避免图片加载失败的情况2.加v-if判断:src中的value值是否为空或者:src的key值是否存在,是则加载图片,否则不加载3.vue项目error方法绑定once,为避免同一个失败链接无限触发error(加载失败后再次请求图片的方法)...
2022-03-07 13:20:45
22028
2
原创 若依 vue 菜单点击报错 Error: Cannot find module ‘@/views/system/user/index‘
菜单路由点击报错,错误信息如下: Error: Cannot find module ‘@/views/system/user/index’在项目里,打开 src/store/modules/permission.js 文件,找到如下代码:报错原因:webpack4 不支持变量方式的动态 import 引用,新版本的使用 require() 。修改为:export const loadView = (view) => { // 路由懒加载 return (resolve) =>.
2022-01-21 16:15:17
8975
1
原创 wx.showToast() 在真机中一闪而过
有时候需要给用户提示错误信息,调用 wx.showToast(),在模拟器上可以正常显示,但在真机上会出现提示信息闪烁一下,就消失了。原因:是因为小程序的内部处理 wx.showLoading() 和 wx.showToast() 调用的是同一个框,相互会受 wx.hideToast() 或者 wx.hideLoading() 的影响。比如你的代码顺序为:wx.showLoading() =>wx.hideLoading() => wx.showToast() ;但是实际在真机上.
2022-01-21 09:40:00
1856
转载 微信小程序车牌键盘
效果图如下:keyboard.jsComponent({ externalClasses: ['v-panel'], properties: { isShow: { type: Boolean, value: false, }, // 控制键盘按钮边框 buttonBorder: { type: String, value: "1px solid #ccc" }, // 控制键盘背景色
2021-09-15 17:32:26
333
转载 前端鉴权必须了解的 5 个兄弟:cookie、session、token、jwt、单点登录
本文你将看到:基于 HTTP 的前端鉴权北京cookie 为什么是最方便的储存方案,有哪些操作 cookie 的方式session 方案是如何实现的,存在哪些问题token 方案是如何实现的,如何进行编码和防篡改?jwt 是做什么的?refresh token 的实现和意义session 和 token 有什么异同和优缺点单点登录是什么?实现思路何在浏览器下的处理从状态说起「HTTP 无状态」我们知道,HTTP 是无状态的。也就是说,HTTP 请求方和响应方间无法维护状态,都是一次性的,
2021-09-02 12:50:08
721
原创 浏览器调起相机拍照
在微信浏览器或其他移动端浏览器调起相机:// 可以调起相册、文件管理器、相机<input type="file" accept="image/*" value="上传" />// 直接调起相机<input type="file" accept="image/*" capture="camera" value="上传" />...
2021-08-31 09:22:34
896
原创 npm install 报错 check python checking for Python executable python2 in the PATH
当npm install 的时候,报如下错误:Building: G:\nodejs\node.exe F:\test\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=gyp info it worked if it ends with okgyp verb cli [gyp verb cli
2021-08-28 14:57:28
12476
2
原创 el-table-column 表格列宽度根据内容自适应
问题el-table 对于动态获取数据的表格,希望单元格内容不换行,就要设定足够的宽度,el-table-column 是支持设置固定宽度的,但是,由于数据不确定,所以无法预设宽度,怎么解决呢?解决方案可以根据实际渲染后的 DOM 元素宽度动态计算内容宽度就能设置列的宽度。具体做法通过查看渲染后的 DOM 元素发现,el-table 的表头和内容分别用了一个原生table,通过colgroup设置每列的宽度。就从这里入手,col的name属性值和对应的 td 的class值是一致的,这样就可以遍历
2021-08-23 17:30:18
22838
6
原创 Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-
父组件:<popup :show="showPopup" @closePopup="closePopup"></popup>子组件:<template> <div v-if="show" @click="close"> 子组件内容 </div></template> <script> export default { name: "popup", props
2021-08-12 11:11:30
263
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人