自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 VsCode修改代码片段

1.设置Vscode代码片段2.选择html.json文件3.进入代码片段生成网站https://snippet-generator.app/4.将网站右边的代码全部复制进入html.json(如果需要多个,可以用逗号分隔创建多个。)5.以案例为例,直接在Vsocode中输入vueapp就可以生成了。...

2021-06-08 18:32:48 745

原创 rem移动端适配

<script >var scale=1/window.devicePixelRatio;document.querySelector('meta[name="viewport"]').setAttribute('content','width=device-width,initial-scale='+scale+', maximum-scale='+scale+', minimum-scale='+scale+', user-scalable=no');document.document

2021-03-19 11:15:18 98

原创 axios all并发请求的时候出现 Cannot set property ‘ ‘ of null

原代码created(){ function getPetTypes(){ return axios.get(url.getPetTypes) } function getProductTypes(){ return axios.get(url.getProductTypes) } axios.all([getPetTypes(),getProductTypes()]) .then(axios.spread(function(ac

2021-03-18 19:34:43 140

原创 success函数中遇到的this指向问题

1.问题在学习uniapp的过程中,通过uni.chooseImage()来上传本地图片。原代码如下:data(){ return { imgArr:[] }},methods:{ chooseImg(){ uni.chooseImage({ count:5, success:(res){ this.imgArr = res.tempFilePaths } }) }}目的是为了获取本地上传图片的地址,然后将其赋值给imgArr。然而这里的thi

2021-03-15 16:33:48 473 1

原创 TypeError: require(...)(...) is not a function

我使用的代码是const {connect,initSchemas} = require('./init.js')(async ()=>{ await connect(); initSchemas();})();这是一个很奇怪的错误,async函数是可以用立即执行函数来操作的。后来发现必须在const后面加上分号。。const {connect,initSchemas} = require('./init.js');(async ()=>{ await conn.

2021-02-24 15:33:21 2091

原创 Mockjs在vue中生成数据

1.安装npm install mockjs --save-dev2.创建mock文件夹,并创建mocke.js以及数据文件(这里以data.json为例)/data.json中的数据/{ "list":[ { "name":"微创", "age":15, "height":180 },{ "name":"王五", "age":20, "height":190 } ]}/mock.js/

2021-02-22 21:47:13 120 1

原创 在使用<router-link>的时候出现“TypeError: Cannot read property ‘_normalized‘ of undefined“

附上代码<li v-for="rows in item.smallTitle" :key="rows.id"> <router-link :to="rows.path">{{rows.name}}</router-link></li>想要传递过去的数据是 smallTitle:[ {name:'宠物',path:'/petshop'}, {name:'宠物用品',path:'.

2021-02-21 14:34:49 1005

原创 vue列表项的显示和隐藏

//数据data() { return { isShow:null, menuTitle:[ { bigTitle:'宠物商店', smallTitle:['宠物','宠物用品'] }, { bigTitle:'宠物服务', }, { bigTitle:'个人中心', smallTitle:['商

2021-02-21 11:47:28 2552

原创 vue.config.js别名设置

module.exports = { configureWebpack:{ resolve:{ alias:{ 'assets':'@/assets', 'common':'@/common', 'components':'@/components', 'views':'@/views', 'network':"@/network" } } }}用于vue项目的快速路径.

2021-02-20 15:57:28 332

原创 Computed property was assigned to but it has no setter.

今天有一个很奇怪的bug,报错的原因我们可以看的很清楚,计算属性没有设置setter这是计算属性源代码,计算属性有getter和setter,默认只有getter,需要时可以设置setter computed:{ isActive(){ return this.$route.path.indexOf(this.path) !== -1 } },虽然效果仍然可以实现,但是就是每次用该数据都会报错,看了vue官方文档官方演示也是不带setter的,为啥我不设置set

2021-02-08 20:14:15 2806

原创 GET和POST的区别同时随便讲讲cache

首先!必须要说的是!GET和POST本质上是没有啥区别的,GET和POST就是一种TCP链接,不过GET产生1个TCP数据包,POST产生两个数据包。GET是将http header和data一起一次发送出去,服务器响应200。POST是分两次发送,第一次发送http header,服务器响应100,第二次发送data,服务器响应200 ok。表现形式上1)GET参数通过URL传递,而POST是将数据放在了request body里。2)GET请求参数会被完整保留在浏览器历史记录里,而POST中

2020-11-10 22:30:33 315

原创 在地址栏中输入一个url到页面呈现的过程

用流程来表达

2020-11-10 22:09:28 359

原创 webstorage、cookie、sessionStorage和localStorage的介绍和区别

共同点:都是保存在浏览器端,是同源的。cookie数据始终在同源的http请求中携带(即使不需要),即在服务器与客户端之间来回传送,有路径(path)的概念,且存储容量很少4k左右。而sessionStorage和localStorage仅保存在本地,不会自动传输数据给服务器。sessionStorage仅在当前浏览器窗口关闭之前有效,不能持久保存。localStorage窗口或者浏览器关闭都一直有效,用作持久保存。cookie在设置的cookie到期时间之前一直有效,即使窗口或浏览器关闭。local

2020-11-10 16:55:34 358

原创 WebSocked、SSE、http1.0、http1.1和http2.0之间的关系

1、WebSocked是个啥?首先,WebSocked是html5搞出来的一种新的协议,所以和http没有什么联系,要说非要有联系就是他借用了http协议来完成一部分的握手,但它和http一样都是一种连接协议,建立在tcp协议之上,使用在应用层。那么我们已经有了http协议为什么还要WebSocked呢?因为WebSocked有一个最大的特点,就是服务器可以主动向客户端推送信息。而http协议只能做到客户端向服务器推送信息。很多网站为了实现推送技术,所用的技术都是 Ajax 轮询。轮询是在特定的的时

2020-11-10 16:16:06 231

原创 TCP和UDP以及TCP的三次握手和四次挥手

1、TCP和UDPInternet 的传输层有两个主要协议,互为补充。一个是TCP协议,一个是UDP协议。UDP:用户数据报协议,是一种无连接的传输数据的协议。TCP:传输控制协议,是一种面向连接的传输数据的协议。2、TCP和UDP的区别TCPUDP面向连接的无连接的面向字节流面向报文可靠的,数据能完整、不丢失的传输不可靠的,数据很容易在传输丢失只能1对1支持1对1,1对多首部字节为20首部字节为83、适用于什么场景?UDP面对TCP的

2020-11-10 15:32:19 157 1

原创 说一下http和https协议

1、http协议和https协议http协议:超文本传输协议,是互联网上应用最多的协议,基于TCP/IP通讯协议来传递信息,用于从WWW服务器传输超文本到本地浏览器的传输协议。https协议:我们可以将其看作是以安全为目标的http协议。在http协议的基础上增加了SSL/TSL层,可以确保数据的传输的安全性和完整性。在这里讲一下协议的组成2、https协议的加密明文和密钥对称密钥加密: 使用同一个密钥加密解密非对称密钥加密: 使用不同的密钥加密解密数字签名:是附在报文上的特殊加密校验码

2020-11-10 14:30:20 243

原创 Custom elements in iteration require ‘v-bind:key‘ directives

Custom elements in iteration require ‘v-bind:key’ directives遇到了如下错误原因:v-for之后必须要跟 :key属性解决:

2020-11-05 14:24:17 375

原创 Can’t resolve ‘vue-router’ in

Can’t resolve ‘vue-router’ in原因:运行环境缺少vue-router包解决:终端运行npm install vue-router --save

2020-11-04 20:43:09 3034

原创 vue项目开发目录分析

在学习vue并开发项目的过程中,发现有位老师的规划很详细也很合理,所以对该目录进行记录,方便以后使用

2020-11-04 16:26:42 58

原创 Module not found: Error: Can‘t resolve ‘main.bundle.js‘ in ‘E:\VUE\webpack的使用‘

在初步学习webpack的过程中,根据视频在命令行工具中输入以下代码webpack ./src/main.js ./dist/bundle.js显示出如下错误原因:webpack的版本较高 所用语句版本是低版本解决:改为如下代码webpack ./src/main.js -o ./dist/bundle.js...

2020-10-26 16:42:25 750

原创 将表单中用户输入的内容转换为对象类型

这里封装了一个serializeObjec函数来实现该功能 //将表单中用户输入的内容转换为对象类型 function serializeObject(obj){ //处理结果对象 var result={}; // serializeArray [{name:'username',value:'用户输入的内容'},{name:'password',value:'123456'}] var pa

2020-10-16 15:09:29 240

原创 Ajax函数封装

备份 function ajax(options){ //存储的是默认值 var defaults={ type:'get', url:'', data:{}, header:{ 'Content-Type':'application/x-www-form-urlencode

2020-10-13 15:29:12 40

原创 mongo : 无法将“mongo”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

PowerShell无法识别mongo命令错误报告:解决:在系统环境变量配置Path中添加mongodb的路径我这里的路径(要到bin目录)是C:\Program Files\MongoDB\Server\4.4\bin

2020-10-09 15:11:39 2895

原创 Joi如何显示自定义错误消息Joi.validate%20is%20not%20a%20function

学习joi的过程中在导出e.message过程中发现了如下错误Joi.validate%20is%20not%20a%20function通过查找发现是新版本joi的语法问题原代码//引入joi模块const Joi=require('joi')module.exports=async(req,res)=>{ //定义对象的验证规则 const schema={ username:Joi.string().min(2).max(12).require

2020-10-07 10:38:04 1131 3

原创 阻止表单的默认提交行为

我们这里使用jQuery代码<script type='text/javascript'> //为表单添加提交事件 $('#loginForm').on('submit',function(){ //阻止表单默认提交行为 return false; }) </script>...

2020-10-05 12:14:29 81

原创 MongoDB发现没有了mongoimport文件

在学习MongoDB的过程中发现MongoDB里面bin文件夹下缺少mongoimport文件。原因:mongoimport mongoexport mongodump mongorestore 等工具,作为 mongodb database tools 提供了单独的下载入口https://www.mongodb.com/try/download/database-tools?tck=docs_databasetools1、点击download2、将下载好的文件解压到mongodb的目录下

2020-09-25 18:42:04 3429 2

原创 gulp.series(‘htmlmin‘, ‘cssmin‘, ‘jsmin‘, ‘copy‘)的报错问题The following tasks did not complete

1. gulp.task('default', ['htmlmin', 'cssmin', 'jsmin', 'copy']);会报错:这就是Gulp 4最大的变化就是你不能像以前那样传递一个依赖任务列表。因此你不能再用Gulp3的方式指定依赖任务,你需要使用gulp.series和gulp.parallel,因为gulp任务现在只有两个参数gulp.series:按照顺序执行gulp.paralle:可以并行计算修改后的代码为:gulp.task('default',gulp.ser.

2020-09-24 12:11:46 315 2

原创 nodemon : 无法加载文件 C:\Users\d1063\AppData\Roaming\npm\nodemon.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.

1、管理员身份打开Powershell2、输入set-ExecutionPolicy RemoteSigned3、选Y或A之后正常使用

2020-09-22 20:50:42 209

原创 this在函数中的指向以及改变指向的方法

1、this指向this的指向是当我们调用了函数的时候确定的,调用方式的不同决定了this的指向不同。一般指向我们的调用者。调用方式this指向普通函数调用window构造函数调用实例对象 原型对象里的方法也都指向实例对象对象方法调用该方法所属的对象事件绑定方法调用绑定事件对象定时器函数window立即执行函数window2、改变函数内部this指向js专门为我们提供了一些函数方法来帮助我们更优雅的处理函数内部的this指向问题,

2020-09-18 15:25:39 287

原创 函数的多种定义和调用方式

1、函数的定义方式(1)函数发声明方式function关键字(命名函数)function fn(){ }(2)函数表达式(匿名函数)let fun=function(){}(3)new Function()let fn=new Function('参数1','参数2','函数体');fn();Function 里面的函数都必须是字符串格式第三种方式效率低,较少使用所有的函数都是Function的实例对象函数也是对象2、函数的调用方式(1)普通函数function fn(

2020-09-18 14:38:21 662

原创 双击禁止选中文字

双击 ondblclick禁止选中文字window.getSelection?window.getSelection().removeAllRanges():document.selection.empty();

2020-09-17 18:37:23 321

原创 animate缓动动画函数封装及使用

function animate(obj, target, callback) { // console.log(callback); callback = function() {} 调用的时候 callback() // 先清除以前的定时器,只保留当前的一个定时器执行 clearInterval(obj.timer); obj.timer = setInterval(function() { // 步长值写到定时器的里面 // 把我们

2020-09-10 14:09:34 650

原创 页面被卷去头部的兼容性解决方案

1、声明了dtd,使用document.documentElement.scrollTop2、未声明dtd,使用document.body.scrollTop3、新方法window.pageYOffset和window.pageXOffset,IE9开始支持function getScroll(){ return { left:window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollL

2020-09-10 10:20:11 59

原创 阻止a标签跳转且不影响地址栏

<a href="javascript:void(0)"></a>或者<a href="javascript:;"></a>

2020-09-03 20:16:56 173

原创 2%E7%9D%81%E5%BC%80.png:1 GET http://127.0.0.1:5500/images/%E7%9D%81%E5%BC%80.png 404 (Not Found)

今天在js中出现了如下错误一开始以为是路径不对,但是路径怎么看都是对的到最后发现,js中直接修改的是值,不用路径!!!!被自己蠢哭。直接害,都怪自己太蠢。

2020-09-01 12:15:17 632 1

转载 normalize.css存档

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css *//** * 1. Change the default font family in all browsers (opinionated). * 2. Correct the line height in all browsers. * 3. Prevent adjustments of font size after orientation ch

2020-08-29 17:13:28 48

原创 meta视口标签标准样式

<meta name="viewport" content="width=device-width, user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">属性名取值描述width正整数 或?device-width定义视口的宽度,单位为像素height正整数 或?device-height定义视口的高度,单位为像素,一般不用initial-scale[0.0

2020-08-28 20:03:08 189

原创 原生js:简易ATM机

题目描述:里面现存100块钱。如果存钱,就用输入的钱数加上先群的钱,然后弹出余额。如果取钱,就减去取的钱,然后显示余额。如果显示余额,就显示余额。如果退出,就进行判断再退出。 <script> let sum=100; let atm=Number(prompt("请输入您想要的操作:"+'\n'+"1.存钱"+'\n'+"2.取钱"+'\n'+"3.显示余额"+'\n'+"4.退出")); while(atm!=4){

2020-08-24 18:12:52 378

原创 background 渐变背景

background:linear-gradient (起始方向,颜色1,颜色2,…);背景渐变必须添加浏览器私有前缀background:-webkit-linear-gradient(left,red,blue);background:-webkit-linear-gradient(left top,red,blue);

2020-08-09 15:10:48 267

原创 flex布局与传统布局的差别及其子父元素属性

传统布局兼容性好布局繁琐局限性,不能在移动端很好的布局一般用于网页布局flex弹性布局操作方便,布局极为简单,移动端应用很广泛。PC端支持情况较差IE11 或更低版本,不支持或者仅部分支持。flex布局常见属性以下6个属性是对父元素设置的flex-direction 设置主轴方向justify-content 设置主轴上的子元素排列方式flex-wrap 设置子元素是否换行align-content 设置侧轴上的子元素佩列方式(多行)align-items 设置侧轴上

2020-08-06 12:08:20 247

空空如也

空空如也

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

TA关注的人

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