自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TypeScript 的主要特点是什么?

跨平台:TypeScript 编译器可以安装在任何操作系统上,包括 Windows、macOS 和 LinuxES6特性:TypeScript 包含计划中的 ECMAScript 2015(ES6)的大部分特性,例如:箭头函数面向对象的语言:TypeScript 提供所有标准的 OOP 功能,如类、接口和模块静态类型检查:TypeScript 使用静态类型并帮助在编译时进行类检查。因此,你可以在编写代码时发现编译时错误,而无需运行脚本可选的静态类型:如果你习惯了 JavaScript 的动态类型..

2021-12-29 18:40:49 956

原创 forEach 中 return 有效果吗? 如何中断 forEach 循环

在 forEach 中,使用 return 不会返回,函数会继续执行中断方法使用 try 监视代码块,在需要中断的地方抛出异常官方推荐方法(替换方法):用 every 和 some 替换 forEach 函数every 在碰到 return false 的时候,中止循环some 在碰到 return true 的时候,中止循环...

2021-12-28 16:33:48 571

原创 vue 是什么

官方文档描述:Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。Vue.js 是一个用于创建用户界面的开源JavaScript框架,也是一个创建单页应用的Web应用框架。2016年一项针对JavaScript的调查表明,Vue...

2021-12-23 18:43:45 5013

原创 Async/Await怎么实现

实现方式async await 与 Promise 一样,是非阻塞async await 是基于 Promise 实现的,可以说是改良版的 Promise,它不能用于普通的回调函数 const myAsync = (gen) => { return new Promise((resolve, reject) => { let g = gen(); function step(val) { try {

2021-12-20 22:22:52 620

原创 浏览器与 JavaScript

首先浏览器是多线程的,js 是单线程的(浏览器只给 js 分配了一个线程)单线程的特点就是一次只能处理一件事情。(后一个任务需要等待前一个任务的执行,这就可能出现长时间的等待)js 在单线程中实现异步机制主要依赖浏览器的任务队列任务队列分为主任务队列,等待任务队列在主任务队列自上而下执行的时候,如果遇到异步操作任务,不会立即执行而是把它放到等待任务队列中去排队当主任务队列完成后才会到等待任务队列中进行查找(主任务队列不完,不管等待任务队列是否到达时间,都不做处理,会继续等待主任务队列完成)等..

2021-12-17 18:53:14 174

原创 for-in 和 for-of 有什么区别

for…of 是 ES6 新增的遍历方式,允许遍历一个含有 iterator 接口的数据结构(数组、对象等)并返回各项的值,和 ES3 中的 for…in 的区别如下:for…of 遍历获取的是对象的键值,for…in 获取的是对象的键名for…in 会遍历对象整个原型链,性能非常差,不推荐使用;而 for…of 只遍历当前对象,不会遍历原型链对于数组的遍历,for…in 会返回数组中所有可枚举的属性(包括原型链上可枚举的属性);for…of 只返回数组的下标对应的属性值...

2021-12-16 18:04:12 583

原创 js数据类型检测的方法

数据类型检测的方法有哪些?1、typeof console.log(typeof 2); // number console.log(typeof true); // boolean console.log(typeof 'str'); // string console.log(typeof []); // object console.log(typeof function(){}); // function console.log(typeof {})

2021-12-15 18:52:18 1056

原创 谈谈你对webpack的认识

谈谈你对webpack的认识webpack 是一个模块打包工具,可以使用webapck管理模块依赖,并编译输出模块所需的静态文件。它能够很好的管理与打包 web 开发中所用到的 HTML、JavaScript、CSS 以及各种静态文件(图片、字体等),让开发过程更高效。对于不同类型的资源,webpack有对应模块的加载器。webpack模块打包器会分析模块间的依赖关系,最后生成优化且合并后的静态资源。webpack的两大特色如下:代码切割(code splitting)loader 可以处理各种类

2021-12-14 12:28:46 803

原创 vue3.0 Study

Vue3源码模块化分runtime-core、runtime-dom、runtime-test这三个文件夹都是Vue 运行时相关的核心代码。compiler-core、compiler-dom、compiler-sfc这三个文件夹是 Vue 实现的编译器相关代码。server-renderer 是服务端渲染部分。vue 文件夹是整个项目打包构建之后的出口文件。reactive 文件夹是响应式系统部分ref VS reactive对于基本数据类型,函数传递或者对象解构时,会丢失原始数据的引用

2020-10-18 21:37:43 194

原创 开发 Canvas 时,vscode 代码提示

vscode支持canvas代码提示在script代码中加入/** @type {HTMLCanvasElement} */canvas 的代码提示

2020-10-03 17:59:25 480

原创 Vscode配置设置json文件

{“files.autoSave”: “off”,“vetur.format.options.tabSize”: 4,“window.zoomLevel”: 0}// {// // vscode默认启用了根据文件类型自动设置tabsize的选项// “editor.detectIndentation”: false,// // 重新设定tabsize// “editor.tabSize”: 4,// // #值设置为true时,每次保存的时候自动格

2020-09-04 23:40:06 9026

原创 谷歌浏览器输入网址显示该网页无法正常运作

谷歌浏览器 是一款大家喜爱使用的浏览器,它为我们的生活提供了便捷, 可是,不少朋友还不知道怎么解决谷歌浏览器无法打开网页的问题具体如下:首先,请大家找到电脑中的“谷歌浏览器”,点击进入主界面,然后在搜索框中输入关键字,我们将会发现,系统无法打开网页。第一:我们的搜索引擎设置有误,请大家选择屏幕右上方的 三 按钮第二:然后我们选择设置打开设置页面第三:选择底部的“显示高级设置”这一项。第四:如图所示,选择新界面中的“重置设置”选项。最后,重新刷新页面,就应该可以了。...

2020-08-29 21:25:30 26242 3

原创 Typescript-类型系统初识

Typescript类型系统初识什么是类型程序 = 数据结构 + 算法 = 各种格式的数据 + 处理数据的逻辑数据是有格式(类型)的数字、布尔值、字符数组、集合程序是可能有错误的计算错误(对非数字类型数据进行一些数学运算)调用一个不存在的方法不同类型的数据有不同的操作方式或方法,如:字符串类型的数据就不应该直接参与数学运算动态类型语言 & 静态类型语言动态类型语言程序运行期间才做数据类型检查的语言,如:JavaScript静态类型语言程序编译期间做数据类型检

2020-08-22 09:48:21 125

原创 TypeScript 初感受

TypeScript 初体验环境搭建TypeScript 编写的程序并不能直接通过浏览器运行,我们需要先通过 TypeScript 编译器把TypeScript 代码编译成 JavaScript 代码TypeScript 的编译器是基于 Node.js 的,所以我们需要先安装 Node.js安装 Node.jsnode安装: https://nodejs.org安装完成以后,可以通过 终端 或者 cmd 等命令行工具来调用 node # 查看当前 node 版本 node -v

2020-08-17 22:45:36 139

原创 git clone远程仓库时,一直报没有权限

git clone远程仓库时,一直报没有权限,很大可能第一次输入用户名跟密码的时候,密码输入错误,但第二次重新 git 拉取不会提示填入用户名跟密码,直接报错: 问题在 输入密码时 输入密码错误。而问题出现的原因是Windows的凭据管理器里面保存了你刚才输入的错误账户信息。解决方法:去 控制面板=>用户账户=>凭证管理 下面修改刚才输入错误的账号密码:修改完密码后,重新 git clone 即可...

2020-08-08 15:40:18 9809

原创 Cookie 设置与获取封装

//设置cookie方法function setCookie(name,value,options={}){let cookieData = ${name}=${value};;for(let key in options){let str = ${key}=${options[key]};;cookieData += str;}document.cookie = cookieData;}//获取cookie方法;function getCookie(name){let arr = d

2020-07-30 20:26:00 155

原创 谷歌浏览器刚安装提示“喔唷 崩溃啦”

问题描述:谷歌浏览器提示“喔唷 崩溃啦”点击设置,选项,历史记录等,也提示崩溃卸载重装也无效原因:有可能是注册列表被一些卫士类优化工具或杀毒软件优化了解决方案(推荐第二种):1、在桌面的chrome图标右键-属性,找到“目标” 在最后加入: --no-sandbox(注意, --no-sandbox前面有一个空格),然后点应用、确定。之后打开chrome,进入一种无沙盒运行模式,可以看到浏览器能用,但是这种模式不安全。2、找到 C:\Windows\System32\drivers\bd00

2020-07-20 22:57:25 726

原创 浏览器的copy

代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title></head><body> &

2020-07-12 18:02:59 285

原创 Vue修饰符总结

Vue修饰符Vue提供了一些修饰符,这些修饰符在使用起来非常方便,比如阻止默认事件、冒泡等。.lazy:v-modeil不用多说,输入框改变,这个数据就会改变,lazy这个修饰符会在光标离开input框才会更新数据: <input type="text" v-model.lazy="value">.trim:输入框过滤首尾的空格: <input type="text" v-model.trim="value">.number:先输入数字就会限制输入只能

2020-07-05 16:37:03 266 1

原创 js传值与传址问题

简单数据类型:Number String 布尔 undefined null复杂数据类型:Object Array function Data Match 正则表达式js传值与传址问题传值与传址简单数据类型 --> 传值复杂数据类型 --> 传址以下几种复杂数据类型的例子1. 简单的赋值 let DadProto = { name: "张三", age: 20 } let SonProto = DadProto

2020-07-02 14:43:52 338 1

原创 Vue常见面试题总结

1. vue优点?轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十 kb ;简单易学:国人开发,中文文档,不存在语言障碍 ,易于理解和学习;双向数据绑定:在数据操作方面更为简单;组件化:实现了 html 的封装和重用,在构建单页面应用方面有着独特的优势;视图,数据,结构分离:使数据的更改更为简单,不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作;虚拟DOM:dom 操作是非常耗费性能的, 不再使用原生的 dom 操作节点,极大解放 dom 操作,但具体- - 操作的还是

2020-06-28 21:59:04 269

原创 webpack 中 loader 和 plugin 的区别是什么

webpack 中 loader 和 plugin 的区别是什么loader,它是一个转换器,将A文件进行编译成B文件,比如:将A.less转换为A.css,单纯的文件转换过程。plugin是一个扩展器,它丰富了webpack本身,针对是loader结束后,webpack打包的整个过程,它并不直接操作文件,而是基于事件机制工作,会监听webpack打包过程中的某些节点,执行广泛的任务loader:webpack自身只支持js和json这两种格式的文件,对于其他文件需要通过loader将其转换为

2020-06-22 09:50:48 6902 1

原创 Vue中的Vuex详解

1、什么时候需要使用vuex当项目业务复杂 页面之间有很多关联数据需要交互的时候2、本地存储和vuex的区别vuex是状态管理,是为了解决组件之间数据共享的问题。一个组件的数据变化会映射到使用这个数据的其他组件当中。如果刷新页面,之前存储的vuex数据全部都会被初始化掉。localStorage是H5提供的一个更简单的数据存储方式,之前是用cookie存放数据,但是cookie的数据量太小,所以就用localStorage,它可以有5M的限制,不受刷新页面的控制。因此,在用vue项目开发

2020-06-14 15:02:31 317

原创 nodejs简单反向代理解决跨域

服务器反向代理【解决跨域问题】跨域解决的方法:JSONP 不推荐(只能处理 get 请求)CORS 推荐 (一般是请求自家服务器的时候使用)服务器反向代理 (请求别人家的服务器)注意点:跨域:其实我们发出去的请求,已经发出,并且也拿到了数据,只是浏览器不给我们跨域只存在浏览器中步骤新建一个node.js项目(proxy_server)初始化 npm init -y 生成 package.jsonnpm init -y安装 express 和 axios

2020-06-07 21:43:01 557

原创 Vue组件的传值

组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,就意味这不同组件之间的数据无法相互引用。一般来说,组件可以有以下几种关系:A-B、B-C、B-D都是父子关系C-D是兄弟关系A-C、A-D是隔代关系总结了几种vue组件中通信的几种方式方法一、props父组件A通过props向子组件B传递值, B组件传递A组件通过$emitA组件通过v-on/@触发1.1 父组件 => 子组件传值// 父组件<template> <div id="app"

2020-05-31 16:58:52 95

原创 小程序使用 navigateBack 跳转传递参数

由于小程序项目业务逻辑需要在调用 navigateBack 页面回退时;有两种情况:第一种需要刷新:编辑订单进度,会有状态变化第二种不需要刷新:查看订单编辑内容,只是查看,没有修改或者状态的变化因此,在回退的时候需要判断条件进行刷新,在回退的时候传上参数,在回退后页面获取参数进行判断。在你提交数据的页面,准备回退前一个页面时:// 在提交成功后,返回首页需要刷新(带上参数)let pages = getCurrentPages();let prevPage = pages[pages.le

2020-05-26 18:56:43 3830 1

原创 关于小程序textarea的坑

关于textarea的内容不随页面滚动和固定,以及层级穿透的问题1.textarea的定位textarea标签的placeholder="…"的占位内容在ISO端会出现移动问题解决办法:添加fixed属性,使得占位内容固定2.textarea输入内容不随页面滚动的原因:在小程序y轴方向不能出现overflow的属性,x轴方向有没所谓...

2020-05-22 12:01:03 651

原创 Window 下右键文件夹打开 vscode

新建文件,命名:Open File With VS code.reg右键用记事本打开,文件内容:注意:这里VS Code的路径要用你自己电脑安装的路径Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\VSCode]@="Open with VSCode""Icon"="C:\\Users\\Administrator\\AppData\\Local\\Programs\\Microsoft VS Code\\Co.

2020-05-12 18:51:27 1030

原创 微信小程序之多张图片上传

最近在写基于mpvue小程序,需要多张图片的上传。因为小程序不支持数组的多张图片同时上传,然后根据自己的需求+面向百度开发,参考各位大神的案例,总算搞定。分享下,不足之处,多多指教直接上代码吧多张图片上传,点击预览图片,删除某一张图片<template> <div class="editbig"> <div class="cu-...

2020-04-30 09:18:40 1714

原创 GIT 创建分支及其相关命令

创建分支及其相关命令1、查看分支git branch 查看本地仓库git branch -r 查看远程仓库2、创建分支git checkout -b 分支名3、查看当前所有分支git branch -agit 分支提交合并代码git add .git commit -m “”git pushgit push --set-upstream origin bsd_mark (...

2020-04-29 09:48:40 162

原创 mpvue 关于 vendor.js 大于 500kb 的解决方法

VM6247:1 以下文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理。mpvue关于vendor.js大于500kb的解决方法我用mpvue开发小程序遇到的最头疼的坑,引入外部的包会导致vendor.js文件过大,轻轻松松就能超过500kb,上网搜了很久才得到了解决方案.找到项目下的build文件夹,打开webpack.dev.conf.js文件var Uglif...

2020-04-28 14:17:59 2986 1

空空如也

空空如也

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

TA关注的人

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