自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 浏览器页面调用设备摄像头和麦克风

【代码】浏览器页面调用设备摄像头和麦克风。

2023-05-27 11:50:20 141

原创 vue项目安全漏洞扫描和修复

4.启动服务,不出意外的话,vue.config.js 的配置会有报错,因为webpack4和5有一部分的配置不一样。2. 让audit fix安装SemVer-major更新到顶层依赖,而不仅仅是semver兼容的依赖。3.升级后,如果原项目webpack是4,需要升级到webpack5。1.扫描你的项目的漏洞,只显示细节,不修复任何东西。再次启动npm run serve,解决下一个错误。再次启动npm run serve,解决下一个错误。npm audit 返回的漏洞数据来源于。

2023-03-15 14:17:15 3596

原创 npm link 报错 npm ERR! Workspaces not supported for global packages

在 根目录 lerna.json 同级的 package.json。lerna 新增多个项目,在core目录下执行npm link。再执行 npm link 就不再报错了。

2022-10-24 17:40:11 2331

原创 禁止浏览器自动填充el-input(vue3)

<el-input placeholder="手机号" name="login-phone" readonly // 禁止自动填充相关 v-removeReadonly // 禁止自动填充相关 v-focus="900" // focus size="medium" v-model.trim="formRule.phone"> <template #prefix> <img class="icon-image" .

2021-07-28 10:34:47 1126

原创 取消input 输入框自动填充颜色

document的属性和方法

2021-07-28 10:29:25 375

原创 webpack5搭建

从0搭建webpack5思考:整个流程,首先想到项目整体会涉及到的技术,例如一个vue项目,首先.vue文件.scss .css .js .jsx .ts 登录1.那么第一步npm init -y ,安装webpack yarn add webpack webpack-cli ,安装完毕后,新建webpack.config.js 文件2. 新建项目 新建src目录,并新增main.js App.vue ,在main.js 中引入app.vue 文件import Vue f...

2021-05-20 16:00:05 300

原创 github 访问太慢的解决方法

window解决办法打开hosts文件:C:\Windows\System32\drivers\etc\hosts 用记事本等打开都行.粘贴上面代码保存即可 刷新DNS缓存ipconfig /flushdnsmacOS解决方法打开hosts文件.终端输入sudo vim /private/etc/hosts 在 vim 编辑中,输入i可以编辑hosts文件(如果按了没效果再按一下enter) 可以直接粘贴下面地址和域名的映射关系到hosts的最后一行 140.82.113.

2021-05-18 17:42:11 118

原创 node全局包配置/yarn 包管理配置

yarn config set global-folder "E:\Program Files\yarn\global"yarn config set cache-folder "E:\Program Files\yarn\cache"npm config set prefix "C:\node\node_global"npm config set cache "C:\node\node_cache"

2021-05-18 12:11:26 188

原创 webpack5 管理资源设置

const path = require('path')// json 解析const yaml = require('yaml')const json5 = require('json5')const toml = require('toml')module.exports = { entry: './src/index.js', // 入口 output: { path: path.resolve(__dirname, 'dist'), fi.

2021-05-06 15:21:19 96

原创 js中??和?.的意思

空值合并操作符(??)只有当左侧为null和undefined时,才会返回右侧的数 空值合并操作符(??)是一个逻辑操作符,当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数。与逻辑或操作符(||)不同,逻辑或操作符会在左侧操作数为假值时返回右侧操作数。也就是说,如果使用 || 来为某些变量设置默认值,可能会遇到意料之外的行为。比如为假值(例如,'' 或 0)时。见下面的例子。null ?? 20 undefined ?? 3'' ?? 30

2021-04-27 14:18:23 8655

原创 javascript 继承

一、原型链继承当前对象原型prototype等于另一个对象的实例;二、盗用构造函数function SuperType() { this.colors = ["red", "blue", "green"];}function SubType() { // 继承SuperType SuperType.call(this);}三、组合继承(原型链继承和盗用构造函数继承共同使用)四、原型式继承(Object.create(obj) 创建一个新的对象,并给与修改)

2021-04-14 17:33:02 48

原创 javascript垃圾回收

1.标记清理JavaScript 最常用的垃圾回收策略是标记清理(mark-and-sweep)。当变量进入上下文,比如在函数内部声明一个变量时,这个变量会被加上存在于上下文中的标记。而在上下文中的变量,逻辑上讲,永远不应该释放它们的内存,因为只要上下文中的代码在运行,就有可能用到它们。当变量离开上下文时,也会被加上离开上下文的标记。2.引用计数另一种没那么常用的垃圾回收策略是引用计数(reference counting。当两个对象之间相互引用时,这两个对象的引用数永远不能变成0,也就不能被.

2021-04-14 16:49:28 58

原创 script脚本加载和执行

1.推迟脚本执行 defer,立即下周,延迟执行。脚本会被延迟到整个页面都解析完毕后再运行<script defer src="example1.js"></script> 2.异步执行脚本 async<script async src="example2.js"></script> 异步加载,顺序未定 3.动态加载脚本let script = document.createElement('script');script.src = 'g..

2021-04-14 16:42:18 566

原创 requestAnimationFrame

requestAnimationFrame() // 调用串联起来,就像以前使用setTimeout()时一样: function updateProgress() { var div = document.getElementById("status"); div.style.width = (parseInt(div.style.width, 10) + 5) + "%"; if (div.style.left != "100%") { requestA.

2021-04-14 16:29:37 124

原创 字符串修理方法

let s = ' foo ';s.trimStart() //删除字符串前面的空格s.trimEnd() // 删除字符串后面的空格

2021-04-14 15:35:50 102

原创 自定义元素customElements

// 自定义元素class FooElement extends HTMLElement { constructor() { super(); // this 引用Web 组件节点 this.attachShadow({ mode: 'open' }); this.shadowRoot.innerHTML = ` <p>I'm inside a custom element!</p> `; }}customEleme.

2021-04-13 18:04:43 258

原创 自定义dom事件createEvent

创建自定义事件, 需要调用createEvent("CustomEvent")。返回的对象包含initCustomEvent()方法,该方法接收以下4 个参数。 type(字符串):要触发的事件类型,如"myevent"。 bubbles(布尔值):表示事件是否冒泡。 cancelable(布尔值):表示事件是否可以取消。 detail(对象):任意值。作为event 对象的detail 属性。自定义事件可以像其他事件一样在DOM中派发,比如:let div = documen

2021-04-13 15:33:22 141

原创 javascript生成随机数

在需要生成随机值时,很多人会使用Math.random()。这个方法在浏览器中是以伪随机数生成器(PRNG,PseudoRandom Number Generator)方式实现的。所谓“伪”指的是生成值的过程不是真的随机。function randomFloat() { // 生成32 位随机值 const fooArray = new Uint32Array(1); // 用最大可能的值来除 return crypto.getRandomValues(fooArray

2021-04-13 15:16:36 197

原创 键盘上所有非字符键的键码

Backspace 8 数字键盘8 104Tab 9 数字键盘9 105Enter 13 数字键盘+ 107Shift 16 减号(包含数字和非数字键盘) 109Ctrl 17 数字键盘. 110Alt 18 数字键盘/ 111Pause/Break 19 F1 112Caps L...

2021-04-12 17:29:16 751

原创 javascript跨浏览器事件对象

var EventUtil = { addHandler: function(element, type, handler) { if (element.addEventListener) { element.addEventListener(type, handler, false); } else if (element.attachEvent) { element.attachEvent("on" + type, handler); .

2021-04-12 17:11:41 50

原创 javascript跨浏览器事件处理程序(兼容模式)

var EventUtil = {addHandler: function(element, type, handler) { if (element.addEventListener) { element.addEventListener(type, handler, false); } else if (element.attachEvent) { element.attachEvent("on" + type, handler); } else { .

2021-04-12 16:59:33 48

原创 javascript 操作类名,className 属性实现添加、删除和替换

方法一 、// 以下面的HTML代码为例:<div class="bd user disabled">...</div>// 要删除"user"类let targetClass = "user"// 把类名拆分为数组let classNames = div.className.split(/\s+/)// 找到要删除类名的索引let idx = classNames.indexOf(targetClass)// 如果有就删除if (idx > -1)

2021-04-12 14:49:07 986

原创 node节点之间的关系文档树和操作方法

一、关系文档树二、节点操作方法 // appendChild()let returnNode = someNode.appendChild(someNode.firstChild)// insertBefore()returnNode = someNode.insertBefore(newNode,null) //相当于appendChild()方法,作为最后一个子节点插入returnNode = someNode.insertBefore(newNode,s...

2021-04-12 11:20:32 130

原创 html页面检测是否有网络连接navigation.onLine

navigator.onLine// 当有网络时,返回true,无网络返回false// 有两个监听的时间const connectionStateChange = () => console.log(navigator.onLine);window.addEventListener('online', connectionStateChange);window.addEventListener('offline', connectionStateChange);...

2021-04-09 17:45:43 337

原创 window视口的高度和宽度(兼容模式)

浏览器窗口自身的精度尺寸不好确定,但是可以确定页面视口的大小let pageWidth = window.innerWidth, pageHeight = window.innerHeight;// 首先检查pageWidth是不是一个数值,如果不是说明不兼容该属性if(typeof pageWidth != "number") { // document.compatMode 来检查页面是否处于标准模式,如果是使用document.documentElement获取宽度和高度,如果

2021-04-09 15:07:03 681

转载 CentOS环境下Docker安装详细步骤

一、安装docker的先决条件:1.必须是64位CPU架构的计算机,Docker目前不支持32位CPU;2.运行Linux3.8或更高版本内核,CentOS时内核必不小于3.10;3.内核必须支持一种合适的存储驱动,可以是Device Manager、AUFS、vfs、btrfs、以及默认的驱动Device Mapper中的一个;4.

2017-09-09 15:58:24 220

原创 微信小程序访问豆瓣电影api 400 (Bad Request)错误解决方法

wx.request({ url: 'http://api.douban.com/v2/movie/in_theaters', data: {}, header: { "Content-Type": "application/json" }, success: function (res) {

2017-06-08 16:01:51 1840 2

空空如也

空空如也

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

TA关注的人

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