自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牛晓林的博客

前端小白白的自我修养

  • 博客(51)
  • 收藏
  • 关注

原创 可拖动组件 v-drag vue

可拖动元素组件,用自定义指令

2022-10-13 13:19:53 502 1

原创 微信小程序app.js中异步获取的数据,首页拿不到的问题

解决方法:首页拿到数据之后再做操作代码:// app.jsApp({ globalData:{}, onlaunch(){ //调用获取数据的方法 this.getUserInfo() }, //获取全局数据 getUserInfo(){ wx.request({ url:'https://www.test.com', data:{}, success:res=>{ //设置为全局数据 this.globalData.userInfo=

2021-06-02 16:28:33 809

原创 git坑:不区分大小写

今天整理代码,想把本地的代码都推送到远程仓库上。发现一个奇葩问题。本地我某个文件是大写开头,但推送到远程仓库里就是小写的。这种情况实际是git中很常见的情况,原因是git不区分大小写。而文件开始可能是小写创建,后来改成大写的,但是文件内容没有改变,让git以为整个文件没有改变。设置本地git环境识别大小写git config core.ignorecase false本地更改为正确的文件名将错误文件删除git rm --cached 文件 //本地中该文件会被删除step2: git r

2021-05-31 17:38:48 702

原创 面试题: http和websocket关系及理解

http和websocket关系及理解http和websocket都是基于TCP的应用层的协议。用于客户端和服务端之间的通信。基于http的协议,因为简单,被广泛应用,但是它本身是有一些缺陷的。比如使用http协议弹指服务器上是否有内容更新,就必须频繁地从客户端向服务端进行确认。如果服务器上没有更新,就会产生徒劳的通信。websocket是使用浏览器进行全双工通信。由于是建立在http基础上的协议,因此连接的发起方仍是客户端,而一旦建立websocket通信连接,不论是服务器还是客户端,任意一方都可

2021-04-12 16:53:24 1152

原创 面试题:如何判断一个对象是否属于某个类

目录如何判断一个对象是否属于某个类`typeof``instanceof``constructor``Object.prototype.toString.call()`如何判断一个对象是否属于某个类typeoftypeof对于判断除了null之外的基本类型是准确的,但无法判断null、object、array等类型。所以它只在区别对象和原始类型的时候才有用。console.log(typeof 42);// expected output: "number"console.log(typeof

2021-04-12 11:16:30 1573

原创 面试题:call 、apply、bind区别

call 、 apply 、 bind 区别首先明确,call、apply、和bind都是改变this指向的方法。该方法的语法和作用与 apply() 方法类似,只有一个区别,就是 call() 方法接受的是一个参数列表,而 apply() 方法接受的是一个包含多个参数的数组。call// MDN的例子function Product(name, price) { this.name = name; this.price = price;}function Food(name,

2021-04-12 10:36:07 247

原创 面试题:请讲一下闭包

目录作用域闭包的用途注意闭包形成的三个条件闭包的十种表示方式关于闭包的练习题作用域要理解闭包,首先要理解变量的作用域。作用域分为全局作用域和函数作用域(ES5)。在作用域链上,函数内部可以获取外部的变量,但是函数外部不能获取函数内部的变量。闭包就是可以在函数外部获取内部变量的一种方法。闭包最大的特点就是可以记住他所诞生的环境,本质是链接函数内外部。闭包的用途读取函数内部的变量,这些变量始终在内存中(因为引用关系一直存在)。-----所以在不用变量之后需要手动释放变量。能够封装对象的私有

2021-04-09 14:15:59 286

原创 一、ES6复习——let&const

本文讲述了es5使用var带来的问题,以及介绍了let和const的特性。

2021-03-29 11:01:47 90

原创 ant-design-vue-jeecg 项目首屏加载过慢的问题

最近用ant-design-vue-jeecg的开源框架写项目,那个加载叫一个慢啊!我自己谷歌浏览器在网速好的情况下,还得加载十多秒甚至20秒!!!这搁那个用户身上能忍受!!!关键已经用了各种webpack配置,也都没见什么成效。罪魁祸首就是他在线开发表单的包,大到无法想象!package.json中将这个依赖项删除,然后删除node_modules, yarn重新装,再打包,效果立竿见影!这时候强刷浏览器,开始的加载动画时间一晃而过~~美滋滋反正我们也不需要在线开发表单的功能,对我这个项目

2020-12-16 18:21:35 4714 2

原创 media query is expected

如图,.vue 文件中的style部分一直报错。对比了下其他文件,原来是上面import少写了分号是考验眼力的问题,也是考验基本功的问题。加上分号,完美~

2020-12-16 13:58:11 695

原创 多组时间段判断不能交叉重叠

基本的思路,日期也可以当成字符串进行比较,把开始日期,结束日期分别存进两个数组,并用sort排序,循环遍历数组,从开始时间的第二个元素去比较结束时间的第一个元素,如果小于,就代表时间段有交叉,直接跳出,不然就继续遍历,遍历结束,说明时间没有重复,可以提交。 function compareDate(begin = [], over = []){ begin = begin.sort() over = over.sort() for(let i=1;i<.

2020-12-14 19:35:57 2756 2

原创 antdesign vue 表格,点击某行的事件写法

<a-table ref="table" rowKey="id" :columns="columns" :dataSource="dataSource" :customRow="rowClick" > </a-table>对应的文档写法是这样:换成普通的methods里写法: // 点击行时 rowClick(re...

2020-12-14 16:19:42 2047

原创 表单只读readonly属性,不要再用disabled了

一般列表都会有查看和编辑功能,我这傻fufu的用的disabled,然后就这样,很丑。今天突然看到readonly,才想起来还有这个属性!!!之前读法一直有问题,以为是rendon-ly, j今天恍然大悟,是read-only啊,只读啊,多好理解!用在vue里,原生input标签是这样:这里readonly的o大小写都没关系。但如果是ant-design-vue,最好readOnly或者read-only, 如果用readonly会有警告信息只读,文字可以被选中,样式还好看!!路漫漫其修远

2020-12-11 16:56:15 2755 1

原创 鼠标事件中clientX、offsetX、screenX、pageX、x的区别

clientX、clientYlong 型可选,默认为 0,设置鼠标事件时相对于客户端窗口的水平坐标位置;该操作并不会改变真实鼠标的位置。pageX、pageYpageX 是一个由MouseEvent接口返回的相对于整个文档的x(水平)坐标以像素为单位的只读属性。这个属性将基于文档的边缘,考虑任何页面的水平方向上的滚动。举个例子,如果页面向右滚动 200px 并出现了滚动条,这部分在窗口之外,然后鼠标点击距离窗口左边 100px 的位置,pageX 所返回的值将是 300。对于整个页面来说

2020-12-08 15:51:36 684

原创 纯前端导出excel表格

需求:vue框架下,页面加一个“导出”按钮,点击导出excel文件。需求分析:加按钮,点击请求数据接收到数据之后下载导出excel文件步骤:添加模块 // npm npm install --save file-saver xlsx npm install --save script-loader新建文件夹,创建两个文件,如图:(两个在文件文末链接)引入文件const { export_json_to_excel } = require("@/ve

2020-09-08 13:44:48 568

原创 ~ 和 !放在if()代码块中做条件判断

之前写if语句的时候,括号中都是这样写的:if (time < 10) { // do some things }if (index > -1) { // do some things}if (value === 200) { // do some things}这样的代码其实也是可以的,不过对于有些代码可能有更简洁的方式。判断存不在时,可以用 ! 取反const arr = [1, 2, 3, 4, 5]const isExist = arr.incl

2020-06-22 14:38:16 980

原创 ul li 自定义图标 和 图标大小

列表list 有以下属性:链接列表前面的小点点(标记类型)可以通过list-style-type修改: ul { list-style:circle inside; } ul { list-style:square inside; }也可以自定义图片: ul { list-style:square inside url('./assets/Start.png'); }但如果图片比较大,就是这样尴尬的效果了:

2020-06-22 11:27:57 8606

原创 flex布局下,input框不能自适应

今天写登录页面,如图,验证码一栏出现了混乱。图标和button都时固定值,input给了flex:1。发现图标缩小了,button里的字也折行了。加大button的宽度,只会是图标越来越小,输入框却没啥变化。查了一下,才知道,input框有个默认的最小宽度。所以解决方法就是把最小宽度改一下。另一种方法是在input框外面套一个div,给这个div设flex:1。...

2020-04-15 21:09:37 1227

原创 用node创建一个最简单的服务器

前言:我们在编辑器中写好代码之后,有时候是目录直接打开,这种方式的url是类似于file:///C:/Users/Vera/Desktop//index.html这样的路径。这样的打开方式,对于静态页面还好,但在实际发请求时有很多的限制,比如在用百度echarts时,会出现错误。也可以用vscode插件来打开。这时地址就是http://127.0.0.1:5500/index.html这样的h...

2020-04-14 22:22:18 607

原创 代码起名最好用英文

起名的学问说大不大,说小不小。今天上传服务器,结果图片都识别不了,一查发现,是因为起名的原因。变量,文件,文件夹,图片,都得起英文名啊!不然放服务器不好使,还得一个一个改,不够麻烦的···...

2020-04-01 13:33:25 474

原创 微信网页开发bug--网页有的设备过宽,有的设备过窄,视觉效果很差

我是维护一个已有的项目,之前还没有问题,但是大概一个礼拜之前,我们的微信网页就不对了。正常效果应该是这样的:但是他突然就变窄了,视觉效果就变成了这样:而且其他的场景也出现了问题,例如一些应该居中显示的不居中了等等。网上看了其他人的一些回答,有的说head标签中应该写一段话:<meta name="viewport" content="width=device-width, ini...

2020-01-08 10:41:38 205

原创 【面试题】vue实现二级联动(好像也不算二级联动)

需求就是上面的的了。以下是我的实现:代码实现反思:题没看清,数量那个地儿应该是输入框,我给弄成了下拉框不熟练,一直得百度,一直得改bug,也才到这样一个效果贴个代码记录一下:<!-- 第一个下拉框 --><select name="radioOrCheckbox" id="radioOrCheckbox" v-model="value1" @change="...

2019-12-24 17:30:06 551

原创 Vue实现购物车

这个是效果图(丑就丑点吧,功能实现就行):选中的商品,计算对应的总价全选与反选,总价对应变化步进器,选中的商品的数量加减的同时,总价也相应变化移除,对应总价变化<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewpo...

2019-12-12 17:09:45 323

原创 【刷题】Who likes it?

原题目:You probably know the “like” system from Facebook and other pages. People can “like” blog posts, pictures or other items. We want to create the text that should be displayed next to such an item...

2019-12-09 11:33:17 550

原创 【刷题】把字符串中包含5个和5个以上的单词翻转,输出新字符串

原题目:Write a function that takes in a string of one or more words, and returns the same string, but with all five or more letter words reversed (Just like the name of this Kata). Strings passed in wi...

2019-12-09 10:15:35 475

原创 【刷题】求两个整数之间所有整数的和

原题目:Given two integers a and b, which can be positive or negative, find the sum of all the numbers between including them too and return it. If the two numbers are equal return a or b.Note: a and b...

2019-12-05 16:50:09 2420

原创 【刷题】将字符串的后四位显示,其他全部变成“#”

原题目:Usually when you buy something, you’re asked whether your credit card number, phone number or answer to your most secret question is still correct. However, since someone could look over your sh...

2019-12-05 15:43:51 475

原创 【刷题】将字符串中的所有元音字母删除,返回删除后的新字符串(js)

原题目:Trolls are attacking your comment section!A common way to deal with this situation is to remove all of the vowels from the trolls’ comments, neutralizing the threat.Your task is to write a fun...

2019-12-05 15:10:26 1284

原创 Promise和setTimeout执行顺序的问题

关于Promise和setTimeout执行顺序的问题,先看一道题:写出console.log输出的值: console.log('one'); setTimeout(function(){ console.log('two'); },0); Promise.resolve().then(function(){ console.log('three'); }) ...

2019-12-04 14:52:04 404

原创 微信公众号前端-上传图片小记

话不多说,先来源代码//微信上传图片// 思路:// 研究微信jssdk开发文档// 微信要求:通过config接口注入权限验证配置// 先发送请求,获取到后台给的appId、timestamp、nonceStr、signature数据// 然后在请求成功的回调里面注入权限验证配置var wxUrl = HOST + "/Register/GetWXInfo";$.ajax({ ...

2019-11-29 15:01:26 582

原创 面试题--JS基础(一)

面试题–JS基础1. JavaScript的typeof返回哪些数据类型会返回5种数据类型和一种函数类型 number string boolean undefined object functionalert( type of 1 ) // numberalert( type of "zhangsan" ) // stringalert( typeo...

2019-09-18 19:12:17 142 1

原创 使用node做hero小项目(二)

三、完成index.html页面开发3.1 完成getHeroes 接口在app.js中// =======================================================// 接口// 页面中引入db模块const db = require('./db');// 1. 获取所有的英雄app.get('/getHeroes', (req, res) ...

2019-09-07 20:02:02 154

原创 使用node做hero小项目(一)

一、使用git管理项目项目使用git管理,可以推送到远程仓库,也可以不推送。新建一个项目代码,文件夹,首先初始化git。git init把项目用的manager文件夹拷贝过来执行git add .和git commit -m '添加了案例所有的静态页面'git的使用git add .表示把所有改变的文件和新增的文件添加到暂存区,此时没有历史记录git commit -m '注...

2019-09-06 22:00:44 295

原创 封装 mysql 使用的步骤

新建一个文件夹, vscode打开终端,npm i mysql文件夹中新建文件db.js// 封装mysql使用的步骤// 将封装后的函数导出(导出的目的是给其他文件使用)function a(sql, params, cb) { const mysql = require('mysql'); const conn = mysql.createConnection({ ...

2019-09-06 20:29:19 234

原创 node中使用mysql模块的步骤

// 终端中输入 npm i mysql , 安装mysql模块// 1. 加载mysqlconst mysql = require('mysql');// 2.设置连接参数,创建连接对象const conn = mysql.createConnection({ host: 'localhost', // 在别人电脑上就写别人的IP,自己电脑写localhost port: 3...

2019-09-06 20:03:10 437

原创 Ajax的基本概念和简单的实现过程

Ajax的基本概念和简单的实现过程基本概念在此之前,我们通过以下几种方式,让浏览器发出对服务端的请求,获得服务端的数据:地址栏输入地址,回车,刷新特定元素的href或src属性表单提交这些方案都是我们无法通过或者很难通过代码的方式进行编程(对服务端发出请求并且接受服务端返回的响应–网络编程),如果我们可以通过JavaScript直接发送网络请求,那么web的可能就会更多,随之能够实...

2019-08-22 21:29:34 143

原创 ES6中的类的初步了解分析

ES6中的类的初步了解分析ECMAScript 2015 中引入的 JavaScript 类实质上是 JavaScript 现有的基于原型的继承的语法糖。类语法不会为JavaScript引入新的面向对象的继承模型。定义类实际上是个“特殊的函数”,就像你能够定义的函数表达式和函数声明一样,类语法有两个组成部分:类表达式和类声明。先了解类声明:// 类声明class Star {...

2019-08-21 20:15:38 106

原创 jQuery的初步了解和常用API的使用

本篇笔记目标能说出jQuery是什么能够说出jQuery的优点能说出JQuery对象和DOM对象的区别能够使用jQuery常用API,如jQuery选择器、筛选选择器、jQuery筛选方法理解并能够使用链式编程理解并能运用排他思想能运用jQuery属性操作能运用jQuery文本值操作能运用jQuery元素操作能运用jQuery尺寸和位置操作能够说出4种常见的注册事件能够说...

2019-08-20 09:12:55 889

原创 正则表达式的初步了解

认识正则表达式正则表达式(Regular Expression)是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象。正则表达式有很多用处,例如:检索关键字,过滤敏感字符,表单验证等等。正则表达式的灵活性、逻辑性和功能性都很强,可以迅速地用极简单的方式达到字符串的复杂控制。对于刚接触的人来说,比较晦涩难懂。比如:^\w+([-+.]\w+)*@\w+([-.]\...

2019-08-19 17:30:14 146

原创 面向对象和面向过程的小小对比

面向对象和面向过程的小小对比面向过程和面向对象这两大编程思想各有优劣,需要辩证看待。首先我们理解一下什么是面向过程,什么是面向对象。面向过程:POP(Process-oriented programming)面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了。面向对象:OOP (Object Oriented Programm...

2019-08-18 21:51:11 149

空空如也

空空如也

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

TA关注的人

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