- 博客(58)
- 收藏
- 关注
原创 vue中使用element ui中el-upload上传文件
首先呢上传文件是以表单的形式上传的,所以呢就涉及到了HTTP content-type,菜鸟教程中对于HTTP content-type的介绍:HTTP content-type有四种常见的取值:四种常见的 content-typeelement ui中el-upload上传文件在调用后端接口进行传值的时候我们用到的是new FormData(),创建一个formData对象实例的方式,然后呢通过通过append方法添加数据,传给后端。比如:还要注意到在请求接口时使用到的HTTP content
2021-09-03 17:54:46
600
原创 vue中调用后台接口,并使用使用dataV时,vue中data的数据不实时刷新
dataV的链接dataV介绍: dataV是一个可以用于大屏中的数据展示的框架,可以用于vue、react等,其中有数字翻盘器,轮播表,进度池等可数据化的组件在vue中dataV时data数据不实时刷新:首先呢用的是dataV中的水位图打印出来的和组件中输出的一模一样,但是页面不出效果,最后知道因为dataV框架中不具有改变在vue的data中数据的能力,所以就可以data中config的数据重新赋值进去,就可以用到扩展运算符比如:水位图中的数据就可以显示出来了...
2021-08-20 11:14:34
2738
1
原创 微信公众平台中测试版小程序
首先肯定是注册小程序啦,获取到AppId,点击注册就进入了小程序注册页面,按照流程填写完邮箱信息登记和信息登记,企业认证的话需要公司财务向腾讯公司汇款指定金额进行验证,只要进行了汇款验证是很快的,当然验证完之后腾讯公司会进行退款。登记完之后就可以在微信公众平台设置中看到注册的信息;在开发管理中的开发设置中得到AppId,在创建小程序时将AppId进行填写。在开发管理的开发设置中进行配置服务器域名,由于小程序发布时请求时必须要是https,所以要进行配置,如果说不是https是htt..
2021-04-28 17:27:10
899
原创 解决小程序中自定义tabBar在真机阅览时上下跳动
在官方文档中自定义tabBar是:在编辑器里面tabBar是没有上下跳的问题,但是在真机阅览时会有,只需要把cover-view和cover-image改成view和image就可以了。这篇文章有解决问题的方案:小程序自定义tabbar踩坑记...
2021-02-23 16:12:58
412
转载 使用iframe固页面定头部和底部时,点击iframe中的a标签实现整个页面的跳转
<a href="#" οnclick=“javascript:top.location.href=‘http://127.0.0.1:8089/head/synopsis’”>这样就可以实现整个页面的跳转转载于:https://blog.csdn.net/clearloveq/article/details/90549838
2021-01-07 16:35:38
757
原创 vue关于使用element ui里面的侧边栏高亮问题
https://www.cnblogs.com/liuqin-always/p/11603708.html
2020-11-30 15:17:33
629
原创 vue 3.0中解决打包之后白屏的问题
首先我们开始打包使用npm run build 打包之后会出现一个dist文件,但是我们发现打包完之后打开dist里面的html文件,会出现白屏的现象,在网上查到方法可能是我们的路径的问题,只看到一个文章是这样配置的在vue.config.js文件中取配置module.exports={ publicPath:'./', outputDir:'dist', assetsDir:'static',}之后在进行npm run build 应该就好了这个是原文:VUE CLI3
2020-09-03 14:04:55
1874
原创 关于vue中局部刷新组件
(1)首先引入这个组件(2)在data中定义一个空的timer(3)接着在触发一个事件之后去进行局部的组件刷新这样就可以进行组件刷新
2020-08-14 16:43:06
276
原创 百度视频活体检测
既然说到的是百度的活体测试,那么就用到的是百度的百度智能云,首先注册百度智能云创建应用进行选择找到公有云api技术文档api文档中的视频活体检测视频活体检测需要调用两个接口(语音校验接口,视频活体检测接口)...
2020-08-13 09:30:47
1993
原创 防抖和节流
防抖和节流都是在解决高频触发的或后台连续请求的优化逻辑问题例如:搜索:防抖和节流都是在解决高频触发的或后台连续请求的优化逻辑问题,还有就是防抖和节流可以用搜索来直接描述,就比方说我们要搜索塑料水杯,当我们输入关键字塑料时,等待的500ms中没有再进行输入关键字那么我们向后台进行请求,如果说我们在等待的500ms之内输入了关键字水杯那么还要等待500ms在想后台进行请求,这就是防抖。节流的话就是说我们在输入关键字塑料时等待500ms后就进行向后台请求,不管在等待的500ms中再数不输入关键字,他都会在50
2020-06-28 21:51:55
495
原创 双向绑定的原理
1 vue.js是采用数据劫持结合发布者-订阅者模模式的方式,通过Object.defineProperty()来劫持setter,getter方法,在数据变动的时候发布消息给订阅者,触发相应的监听回调来渲染试图2.Object.defineProperty()有三个属性: 我要设置的对象。要设置对象的书属性。 要设置的属性的值,这个值时一个对象。3.对象里面有几个对象描述符: value:设置属性值 enumerable:这个属性默认是false,设置成true的时候,定义的对象obj就可以被遍历。
2020-06-26 21:28:03
651
原创 js的闭包变量回收
首先js的回收规则为:1.全局变量不会被回收。2.局部变量会被回收,也就是函数一旦运行完以后,函数内部的东西都会被销毁。3.只要被另外一个作用域所引用就不会被回收在牛客网中刷到的一个题:问题:下列代码存在几个变量没有被回收?var i = 1;var i = 2;var add = function() { var i = 0; return function(){ i++; console.log(i); }}();add();
2020-06-25 22:47:40
1225
原创 小程序实现底部tabber
在微信开发者工具中的app.json中写上:也可在微信小程序中找到的tabber"tabBar": { "color": "cdcdcd", //没有点亮的颜色 "selectedColor": "d81e06", //点击之后的颜色 "list": [ { "text": "首页", "pagePath": "pages/index/index", //跳转的页面 "iconPath":
2020-06-24 21:46:42
223
原创 小程序组件之间的传值
小程序的组件之间传值第一种:父传子:1、现在父组件的子组件标签上面写一个自定义的属性,title=“{{ 需要传的值 }}”2、在子组件中的properties, properties:{ title:{ value:“rrrrrrr”, type:String} },(也可以进行传递多个值)3、(注意:必须要写上string)第二种:子传父:1.现在子组件中使用 this.triggerEvent(‘com’,{ type:“zheshiyigennnnnn”, 事件选项 })
2020-06-23 19:32:23
2041
原创 在微信小程序上写收藏
在详情页的页面上先放上他的默认收藏图标和收藏之后图标2.在详情页的js里面的data里面给添加收藏和取消收藏绑定一个true和false,然后在页面去利用wx:if去给他绑定3.写上他的添加收藏方法和取消收藏方法4.由于添加了之后虽然说他的添加收藏之后的状态,但是返回之后,再回到收藏页面,不是之前的为收藏状态,所以我就在详情里面获取了一下收藏列表,进行了循环判断,让他在返回到详情页面的时候还是收藏的状态。5.这样就可以让他在返回这个详情页面时还是收藏状态。...
2020-06-22 22:19:45
448
原创 将vue的所有过滤器放入js文件
首先过滤器的关键词:filter过滤器就相当于将后台的数据换一种形式输出,不改变原来的数据应用场景:后台返回来的状态码。全局过滤器:全局过滤器在main.js文件夹中写,比如:<template> <div><ul><li v-for="( item , key ) in list" :key="key"> <p>{{ item.name }}</p> <p>{{ item.age|ag
2020-06-21 20:37:09
371
原创 后台管理系统添加用户思路
1、找到添加用户按钮绑定一个点击事件让添加用户模态框显示出来2、给模态框的确定按钮绑定一个点击事件3、通过点击事件请求后台的添加用户接口。4、后台服务器通过服务端语言实现接收浏览器请求5、后端语言查询数据库6、将结果返回给浏览器7、通过js显示到页面上8、隐藏掉添加用户的模态框 adduserlist() { this.dialogFormVisible = false; this.$refs.addue.validate(valid => {
2020-06-15 22:41:07
1134
原创 后台管理系统编辑思路
编辑用户:1、给编辑按钮添加一个点击事件。2、通过点击事件请求后台的编辑接口。3、找到每个商品对应的id和编辑接口进行拼接。4、后台服务器通过服务端语言实现接收浏览器请求5、端语言查询数据库6、将结果返回给浏览器7、最后通过js显示到得页面上 async bianjiuser() { console.log(this.form); const res =await this.$axios.put(`/users/${this.form.id}`, this.f
2020-06-14 23:41:07
730
原创 原生js碰撞检测
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document&l
2020-06-11 23:31:28
152
原创 原生js星星评分
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document&l
2020-06-09 23:40:37
154
原创 原生js二级联动
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Doc
2020-06-08 22:23:41
148
原创 原生js编写图片懒加载原理
首先为什么要有图片懒加载:使用图片懒加载的话就不会刚一打开页面就会把body中的所有图片都加载出来,这样可以 减少对http的请求,也可以优化代码,也可以让服务器去按需加载。图片懒加载的思路:就是说我们刚一打看页面的时候让他加载在可视区域内的内容,所以说我们可以使用一张加载中的图片先放在上面占位,之后通过滑动让我们本来要看到的有个图片在替换掉加载中的图片。画一张图:下来时代码(html):<!DOCTYPE html><html lang="en">..
2020-06-07 21:57:46
230
原创 原生js编写选项卡
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title></title> <style type="text/css"> body, ul, li, p { margin: 0; padding: 0; } #tabs { width: 300px; margin: 100px auto; }
2020-06-06 23:38:52
155
原创 原生js编写小球随机运动
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Do
2020-06-05 22:54:44
496
原创 使用js实现一个无缝轮播
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Doc
2020-06-04 22:59:44
153
原创 深浅拷贝
首先来说浅拷贝:浅拷贝的话简单来说就是复制他原来对象的地址,当然他原来的值如果说发生改变的话,那么复制的那个也会发生改变接下来看一下代码: var obj = [1,2,3,4] obj2 = obj obj[0]=4 //相当于obj2复制了obj的地址所以说改变obj的值obj2中的也会发生改变 //相当于是对象之间的复制 console.log(obj) console.log(obj2)接下来是深拷贝 var obj = [1,
2020-06-03 22:15:39
103
原创 不使用内置方法call,apply,bind改变this指向
改变this指向的原理要用到我们的第三种定义函数的方式:var Fn=new Function()函数由Function构造器实例化这句话怎么去理解:首先举个例子:var name = new Function() console.log(name)输出的形式就是(也可以去传递参数):而且new Function就会是一个构造函数,这时候new Function()中的this指向就会是name,又因为name是一个函数,所以说这个this就会指向name的这个函数。这时候我们去看一下
2020-06-02 18:35:28
299
原创 call,apply,bind
首先call,apply,和bind,是用来改变this的指向,比方说将this的指向为window的改变成某一个对象的this指向如:callvar msg = "react"var obj = { msg:'vue'}function get(v){ console.log(this) //指向的是window this.msg = v return this.msg //找的就会是全局的msg}var res = get.call(obj,'温馨'
2020-06-02 12:41:26
90
原创 js几个经典题
题:每隔一秒打印出1到10首先如果说这样写的话: for (var i = 1; i <= 10; i++) { setTimeout(function () { console.log(i) //11 },1000) }因为setTimeout为异步函数微任务则js执行代码的时候会先将微任务放在异步队列里面然后等到for循环执行完之后i=11了,所以最后在执行setTime时输出的i就会是11,就不会每隔一秒打印出来1到10。(当然可以使
2020-06-01 13:35:35
310
2
原创 封装搜索组件
子组件的代码:<template> <div> <input type="text" v-model="dd" @keydown.enter="chui" @keydown.delete="del" @keydown.up="up" @keydown.down="down" /> <div v-for="(item,key) in chu" :key="key"&g
2020-05-31 20:56:02
266
原创 vue递归多级菜单
首先模拟的数据:const tree = { name: '电子产品', children: [ { name: '电视', children: [ { name: 'philips', children: [ { name: 'philips-A' }, { name: 'philips-B' } ] }, {
2020-05-30 13:00:39
476
原创 在页面上生成100个随机颜色的小球
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Do
2020-05-29 22:39:11
899
原创 在vue中组件不使用v-model实现数据的双向绑定
v-model相当于是value属性和input事件的语法糖,可以将一些模块封装成组件:比如说input这样有利于使用。在父组件中的代码:<two v-model="value"></two><div>{{ value }}</div>import two from './two'//input组件在子组件中:<template> <div><input type="text" :value=" valu
2020-05-28 18:29:54
2283
6
原创 关于路由
路由分为前端路由和后端路由:1.前端路由:是由程序员来设置的页面跳转规则,由不同的路径显示不同的组件 但是前端路由的路径在后台服务器上是不存在的2.后台的路由:每个路由对应的是一个接口,也就是说后台的路由是在服务器上真实存在的,每个后台的路径都对应的一个接口数据路由的原理vue的路由分为两种 hash路由 history路由1.hash路由: js原生事件 onhashchange()当页面的hash发生变化就会触发该事件history路由:2.是利用h5新增的api histo.
2020-05-27 21:52:30
117
原创 js经典题讲解宏任务微任务(js事件循环机制)
首先是代码: console.log(1); setTimeout(function(){ console.log(2); },0) Promise.resolve().then(function(){ console.log(3); }).then(function(){ console.log(4); }) console.log
2020-05-26 17:59:32
370
原创 vue生命周期
首先生命周期对象或者实例的一个从无到有再到无的过程在这个过程中系统给我们提供了一些钩子函数,这些钩子函数不用手动的调用,在对象或者组件到特定的阶段会自动的执行 作用:在生命周期的钩子中添加自己的代码,实现特定的功能,来帮助我们实现某些效果系统给我们提供了8个钩子函数:1.实例或者组件的初始化阶段beforeCreate 在这个钩子上data和methods中的数据都是没有办法使用的在这个钩子运行的时候只有实例本身的一些事件和钩子created 在这个钩子上 data和methods中
2020-05-25 21:58:15
92
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人