- 博客(77)
- 资源 (2)
- 收藏
- 关注
转载 git commit提交代码报错Git:.husky/pre-commit: line 2 : .husky/_/husky.sh: No such file or directory
git
2022-07-07 15:24:15 5553
原创 小程序学习之路(持续更新)
小程序学习之路1. 小程序简介2. 第一个小程序1. 小程序简介小程序与普通网页开发的区别运行环境不同:网页运行在浏览器环境中、小程序运行在微信环境中API不同:小程序无法调用DOM和BOM的API,但是可以调用微信环境提供的各种API 地理定位、扫码、支付。开发模式不同:网页开发模式:浏览器+代码编辑器 ;小程序有自己标准的开发模式:①申请小程序开发账号② 安装小程序开发者工具③创建和配置小程序项目2. 第一个小程序使用浏览器打开 https://mp.weixin.qq.com/网址,
2022-05-19 20:14:06 399
原创 vue【下载模板】
下载模板事件点击额外引入文件事件点击<button @click='downloadModelUrl'>下载模板</button><script lang='ts'> import { TEMPLATE_URL } from 'src/framework/common/const'; import { download } from 'mwrComponents/util/tool' private downloadModelUrl () {
2022-05-07 17:40:47 493
原创 ts基础语法
ts基础语法1. watch2. get计算属性3. 父传子 @Prop4. ts中获取minins1. watch@watch(path: string, options: watchOptions = {})@watch装饰器接受两个参数path: string 类型,表示需要被监听的属性名;options? : WatchOptions = {} 包含两个属性;immediate?: boolean 监听开始后是否立即调用该函数;deep?: boolean 表示是否深度监听
2022-04-26 15:21:32 644 2
原创 lodash工具库中cloneDeep的用法
lodash工具库中cloneDeep的用法<script lang='ts'> import cloneDeep from 'lodash/cloneDeep.js'; export default class AddorEdit extends Vue { @prop({ default:()=>({}) }) fromData!:Record<string,any>; created(){ let data=cloneDeep(t
2022-04-21 17:12:45 2364
原创 下拉框添加新增选项按钮
下拉框添加新增选项按钮效果图代码效果图代码<template> <el-select v-model="submitData.src_type" ref="template" style="width:370px" @visible-change="(v)=>visibleChange(v,'template')" > <el-option v-for="(item,ind
2022-04-01 14:38:50 2098 3
原创 React创建组件的两种方式及事件处理
React创建组件的两种方式1. 函数创建组件2.class类创建组件3.React事件处理3.1 函数组件中的事件处理3.2 class组件中的事件处理1. 函数创建组件函数名称必须以大写字母开头函数组件必须有返回值 ——return()如果返回值为null表示不渲染任何内容function Hello(){ return null //则不会渲染下边的div标签 return ( <div>函数创建组件</div> )}2.class类
2022-02-20 22:35:26 574
原创 vue中使用腾讯云点播TCPlayer-播放
vue中使用腾讯云点播TCPlayer1.点击显示录像信息效果图:代码实现1.点击显示录像信息效果图:代码实现<template><el-button type="text" @click="lookExamVideo(scope.row)" >查看考试录像</el-button> <el-dialog title="查看考试录像" :close-on-click-modal="false" :close-on-press-es
2022-01-24 17:31:54 2406 3
原创 vue项目使用百度地图
vue项目使用百度地图1. 安装npm install vue-baidu-map —save2. pulic/index.html引入js文件3.在组件中使用1. 安装npm install vue-baidu-map —save2. pulic/index.html引入js文件 <head> <script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=AoV4NBftZmNXf4LgCCm
2022-01-20 15:21:13 574 3
原创 jsx介绍
2.jsx介绍JSX是JavaScript XML的简写表示了在JavaScrit代码中写XML(HTML)格式的代码.优势:声明式语法更加直观,与HTML结构相同,降低学习成本,开发效率。JSX是react的核心内容jsx不是标准的js语法,是js的语法扩展,脚手架内置的@babel/plugin-transform-react-jsx包,用来解释该语法。JSX使用步骤导入reactDom包使用jsx创建react元素将react元素渲染到页面中核心代码:import ReactD
2022-01-20 14:48:15 948
原创 react概述
1.react概述React文档 (https://reactjs.org/)React中文文档(https://zh-hans.reactjs.org/)新版 React 文档(https://beta.reactjs.org/)掌握如何使用react脚手架创建react项目命令:npx create-react-app react-basicreact-basic 表示项目名称,可以修改启动项目:yarn startor npm start掌握react的基本使用功能步骤导入
2022-01-19 11:50:01 601
原创 el-table@expand-change=“rowClick“点击一级专业显示二级专业,点击下一个箭头,上一个关闭
el-table @expand-change="rowClick"点击一级专业显示二级专业,默认展开点击的二级专业,其他关闭实现效果 <el-table :data="majorList" style="width:100%;margin-top:1% ;" @expand-change="rowClick" ref="refTable"> <el-table-column type='expand'> <template
2022-01-16 11:36:48 626
原创 el-upload实现上传头像
1.<template> <el-upload :action="uploadFileUrl" list-type="picture-card" :on-preview="handlePictureCardPreview" ref="uploadimgs" :on-remove="handleRemove" :class="{hide:iconUploadShow}" :on-cha
2022-01-03 16:23:54 1460 1
原创 富文本编辑器公共组件
富文本编辑器公共组件<template> <div> <el-upload :action="uploadUrl" :before-upload="handleBeforeUpload" :on-success="handleUploadSuccess" :on-error="handleUploadError" name="file" :show-file-list="false"
2021-12-15 14:21:08 187
原创 TCP、UDP的区别及使用场景
TCP、UDP的区别及使用场景1.概念2.区别3.使用场景3.1 tcp适用场景3.2 udp适用场景1.概念TCP协议是传输控制协议,需要将传输的文件分段传输,建立会话,可靠传输,流量控制。UDP协议是用户数据报协议,一个数据包就能够完成数据通信,不分段,不需要建立会话,不需要进行流量控制,不可靠传输。2.区别(1)TCP是面向连接的,udp是无连接的即发送数据前不需要先建立链接。(2)TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达,因为tcp可靠
2021-09-30 09:06:16 1228
原创 Cookie、sessionStorage、localStorage的区别
Cookie、sessionStorage、localStorage的区别1.相同点2.区别3.cookie作用补充1.相同点都是保存在浏览器端,并且都是同源的2.区别Cookie:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而seesionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以显示cookie只属于某个路径下,存储的大小很小,只有4k左右。总结:
2021-09-24 17:19:01 389
原创 js中继承的六种方式
给定代码实现继承具体案例具体案例 <script> function Japanese(){ this.language='japanese' this.skin='yellow' } // 继承 Japanese.prototype=new Person()//获取公共对象,放到原型对象上 Japanese.prototype.constructor=Japanese//原型对象的constructor属性指向japanes
2021-09-24 15:56:08 152
原创 前端面试编程题
1.修改 this 指向function bindThis(f, oTarget) { return function(){ return f.apply(oTarget,arguments) }}2.dom节点查找描述:查找两个节点的最近的一个共同父节点,可以包括节点自身oNode1 和 oNode2 在同一文档中,且不会为相同的节点function commonParentNode(oNode1, oNode2) { let pa
2021-09-24 12:28:09 1473
转载 vue3.0手动封装消息提示框
封装消息提示框1.使用场景2.提示组件 message.vue3.滑动效果4. 通过方法的形式调用1.使用场景场景还是比较多的 例如常见的登录、做一些功能发送失败的ajax都可以用弹框提示2.提示组件 message.vue<template> <div class="xtx-message" :style="style[type]"> <!-- 上面绑定的是样式 --> <!-- 不同提示图标会变 --> <i
2021-09-23 18:45:02 2138
原创 ES6实现继承
extends 是 ECMAScript 6 中实现继承的简洁语法class Father{ //父类的属性 legs=2 arms=2 eyes=2 //父类方法 walk(){ console.log('人类都会走路了') } sleep(){ console.log('人都要睡觉') } } // son继承了Person的所有特征 cl
2021-09-23 11:46:27 215
原创 vue3.0手动封装分页组件
封装分页组件1.父组件引入2.子组件1.父组件引入src/views/goods/components/goods-comment.vue <!-- page表示初始化分页时,默认显示第几页 --> <XtxPagination @change-page='changePage' :pagesize='reqParams.pageSize' :total='total' :page='1' /> //调接口 import {findCommentListByG
2021-09-23 11:24:18 517
原创 Js中的class类
class类1.class类由来2.实例成员3.静态成员1.class类由来传统面向对象的编程序语言都是【类】的概念,对象都是由类创建出来,然而早期 JavaScript 中是没有类的,面向对象大多都是基于构造函数和原型实现的,但是 ECMAScript 6 规范开始增加了【类】相关的语法,使得 JavaScript 中的面向对象实现方式更加标准。class(类)是 ECMAScript 6 中新增的关键字,专门用于创建类的,类可被用于实现逻辑的封装。2.实例成员class Person{
2021-09-23 10:51:54 629
原创 浅拷贝、递归实现深拷贝
深浅拷贝1.浅拷贝2.深拷贝1.浅拷贝浅拷贝只拷贝最外层,拷贝不彻底 let obj = { uname : '张三丰', age : 22, sex : '男', color : ['red', 'blue', 'yellow', 'pink'], message : { index : 1, score : 99 } } let newObj = {}; Object.assign(newObj, obj); console
2021-09-22 22:12:38 137
原创 浅谈闭包
什么是闭包1.闭包的概念2.代码格式上1.闭包的概念一个作用域有权访问另一个作用域的局部变量,称为闭包2.代码格式上function father (){ let n=1 return function (){ console.log(n) }}let son=father ()son()son()总结: 子函数访问了父函数的局部变量闭包作用:让一个变量的作用范围延伸(一个函数执行完之后应该释放内存空间,但是子函数用到了它的局部变量,所以不能被释放)...
2021-09-22 20:55:17 93
原创 async/await
async/await1.async2.await2.1await概念2.2await案例1.async2.await2.1await概念await让JS引擎等待直到promise完成并返回结果语法:let value=await promise对象;//要先等待promise对象执行完毕,才能得到结果由于await需要等待promise执行完毕,所以await会暂停函数的执行,但不会影响其他同步任务2.2await案例async function abc(){ console.
2021-09-22 18:11:55 74
原创 哪些操作会造成内存泄漏以及如何解决内存泄漏
这些操作会造成内存泄漏1.垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0(没有其他对象引用过该对象)或对该对象的唯一引用是循环的,那么该对象的内存即可回收2.setTimeout的第一个参数使用字符串而非函数的话,会引发内存泄漏3.闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)...
2021-09-22 15:01:16 1165
原创 防抖节流
防抖节流1.防抖1.1防抖概念:1.2防抖案例:1.3搜索框节流案例:2.节流2.1节流的概念2.2节流案例2.3节流应用场景3.总结1.防抖1.1防抖概念:当事件出发之后,预定单位时间(比如1s)之后执行里面的代码;如果在单位时间内再触发了事件,那么要重新计时,以保证事件里面的代码只执行一次。1.2防抖案例:<body> <button>注册</button> <script> let timer=null doc
2021-09-21 21:56:55 140
原创 原型链总结
原型链1.原型对象2.constructor3.--proto--4.原型链1.原型对象prototype2.constructor每个构造函数都有constructor,constructor指向构造函数本身3.–proto–实例对象通过–proto–获取原型对象上的数据4.原型链含义:原型连起来组成的链状结构原型链:提供查找成员得到机制,在自身实例对象上找不到,则通过–proto–去原型对象上去找f object(){}object 是用来创建普通对象的构造函数..
2021-09-19 09:37:47 157
原创 解构赋值
解构赋值1.数组解构赋值2.对象解构赋值1.数组解构赋值 // 1.一一对应 // let [a,b,c,d,e,f]=['张飞','刘备','关羽','赵云','安琪拉','墨子'] // console.log(a,b,c,d,e,f) // 2.变量少值多 // let [a,b,c,d,e]=['张飞','刘备','关羽','赵云','安琪拉','墨子'] // console.log(a,b,c,d,e) // 3.变量多值少 //
2021-09-18 19:05:14 88
原创 预解析(变量提升)
预解析1.预解析含义2.变量预解析3.函数预解析3.1函数表达式1.预解析含义在代码执行之前把变量和函数会提前解析到当前作用域的最前面代码从上往下执行,代码执行之前会预解析变量:带有声明的变量,只定义不赋值函数:带有名字的函数,只定义不调用2.变量预解析例1: //预解析是先从自身作用域中找,num声明了但是未赋值,所以打印出来是undefined console.log(num) var num=123 var n=1例2: /* 解
2021-09-18 16:16:10 350
原创 vue3实现图片懒加载
图片懒加载1.目的2.具体实现2.1 在src/components/library/index.js定义指令2.2使用指令1.目的当图片进入可视区域内去加载图片,且处理加载失败,封装成指令2.具体实现2.1 在src/components/library/index.js定义指令import defaultImg from '@/assets/images/200.png'const defineDirective=(app)=>{ //扩展自定义指令,lazyload是指令名称 a
2021-09-16 18:45:16 695
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人