自定义博客皮肤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)
  • 收藏
  • 关注

原创 浏览器常见的兼容性问题

CSS:1.不同浏览器的标签默认的外补丁和内补丁不同问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。碰到频率:100%解决方案:CSS里 *{margin:0;padding:0;}备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设置各个标签的内外补丁是0。2.块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大问题症状:常见症状是IE6中后面的一块被顶到下一

2021-09-22 14:37:37 196

原创 JavaScript同源策略与跨域请求

1. 什么是同源策略 ??URL由协议、域名、端口和路径组成,如果两个URL同源,则它们的协议、域名和端口相同。若页面A要访问B资源,则它们要是同源的,遵循同源策略。同源策略 是浏览器上为安全性考虑实施的策略,如果一个网页可以随意地访问另外一个网站的资源,那么就有可能在客户不知情的情况下出现安全问题。2.跨域与跨域请求跨域 :指的是两个资源非同源。跨域请求:出于安全方面的考虑,页面中的JavaScript在请求非同源的资源时就会出 现跨域请求问题。因为不遵循同源策略,我们的请求会被浏览器禁止。3

2021-09-22 01:07:56 387 1

原创 JavaScript使用笔记

一. js 遍历对象的几种方法1. 第一种: for…inconst obj = { id:1, name:'zhangsan', age:18 } for(let key in obj){ console.log(key + '---' + obj[key]) }2. 第二种:(1). Object.keys(obj)(2). Object.values(obj)const obj

2021-09-21 00:04:02 138

原创 算法与数据结构 (JavaScript版)

一、概念1.什么是算法与数据结构??数据结构:指的是“一组数据的存储结构”算法:指的是“操作数据的一组方法” (计算机解决问题的一种方法)数据结构是为算法服务的,算法是要作用在特定的数据结构上的。2.常用的数据结构与算法??数据结构: 数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Tire树算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法3.数据结构与算法思维导图:...

2021-09-20 18:00:29 713 1

原创 react组件通信的几种方式

在react中常见的几种情况如下: 1.父子组件通信 2.跨级组件通信 3.非嵌套组件通信父子通信1.父传子 —》props2.子传父 —》props+回调函数跨级组件通信1.props 逐层传递 (不考虑)2.context 传递 context是一个全局变量,像是一个大容器,在任何地方都可以访问到,我们可以把要通信的 信息放在context上,然后在其他组件中可以随意取到。 但是React官方不建议使用大量context,尽管他可以减少逐层传递,但是当组件结构复杂的时候,我们

2021-09-07 20:49:50 940

原创 MVVM在react、vue中的理解

一:什么是MVC、为什么不用MVC1:MVC的含义:M(modal):是应用程序中处理数据逻辑的部分。V (view) :是应用程序中数据显示的部分。C(controller):是应用程序中处理用户交互的地方(Controller是MVC中的数据和视图的协调者,也就是在Controller里面把Model的数据赋值给View来显示(或者是View接收用户输入的数据然后由Controller把这些数据传给Model来保存到本地或者上传到服务器))M-V-C之间的关系可以用下面这张图直观展示:2

2021-08-31 15:14:59 740

原创 数据请求的几种方式(ajax、fetch、jQuery、axios),token过期自动刷新

一个contextimport React, { Component, createContext } from 'react';const BatteryContext = createContext();//声明一个孙组件class Leaf extends Component { render() { return ( <BatteryContext.Consumer> { battery => <h1&g

2021-08-27 01:44:34 2816

原创 react使用笔记

什么是TS接口?是为这些类型进行命名,或为你的代码或者三方代码定义契约。

2021-08-24 00:47:47 119

原创 TypeScript使用笔记

https://ts.xcatliu.com/basics/union-types.html

2021-08-22 23:55:19 101

转载 深克隆,以及ES6新增方法assign()是否为深克隆?

1.深克隆,即worker和newWorker互不影响,最常用的就是方法就是递归:function deepClone(obj) {if (typeof obj != “object”) {return obj}var newObj = {};for (var i in obj) {newObj[i] = deepClone(obj[i]);}return newObj}var worker = {name:“yyx”,age:“27”}var newWorker = deep

2021-08-01 17:26:40 166

原创 vue生命周期函数

代码的实现过程: (这种编程范式是:声明式编程) 挂载元素后, 就会去解析这个元素,然后解析到某个变量message; 看在data里面有没有定义这个变量,如果定义了就会把该变量的值在元素中显示。 即:先根据el,找元素---》解析元素内容---》对照data; 声明式编程好处:做到数据与界面完全分离...

2021-01-25 16:54:25 79 1

原创 template、render函数的使用

<div id="app"> </div> <script> new Vue({ el:"#app", data:{ message:"消息" }, render:function(createElement,message) { //传值 return create.

2021-01-25 16:36:37 1584

原创 git常用命令

git常用命令$ mkdir abc$ cd abc/将项目拷贝到当前目录:$ git clone https://git.develop.reolink.com.cn/liufn/test.git (关联)打开软件修改项目内容:$ code .进入项目上传(初始化了)$ cd test/$ git add .$ git commit -m “修改”$ git push -u origin master (提交到远程仓库的master分支)||$ git pus

2020-12-24 21:08:12 256

原创 数组常用方法

数组方法总结:1.push():该方法向数组末尾加一个或多个元素,并返回数组新长度。var arr=["孙悟空","猪八戒","沙和尚","唐僧"];arr.push("二郎神");arr.push("牛魔王","铁扇公主");2.pop():该方法删除数组中的最后一个元素,并返回所删除的元素var arr=["孙悟空","猪八戒","沙和尚","唐僧"];arr.pop(); //删除了arr的最后一个元素 "唐僧"3.unshift()方法:向数组开头添加一个或多个元素,并返回新数

2020-10-18 19:19:50 345

原创 JavaScript—线程机制与事件机制

文章目录1.进程与线程2.浏览器内核3.js是单线程的4.事件循环模型5. H5 Web Workers(多线程)1.进程与线程1.基本概念:(1).进程:是程序的一次执行,它占用一片独有的内存空间,程序运行就启动了进程。(2).线程:是进程内的一个独立执行单元,是程序执行的一个完整流程。2.进程和线程关系*一个程序中可以有一个或者多个进程;(如在一个工厂中可以有一个车间(单核)或多个车间(多核),就是多进程)*一个进程中可以有一个或者多个线程;(如一个车间可以有一个工人工作,或多个工人

2020-10-18 18:11:13 173

原创 css—flex布局(实战篇)

文章目录容器属性:flex-direction ——项目水平方向flex-wrap ——项目是否换行flex-flow ——前两个缩写,默认为:从左到右、不换行justify-content ——项目的水平对齐方式align-items ——项目的垂直对齐方式align-content ——项目整体、之间的对齐方式项目属性:order

2020-10-18 12:48:37 270

转载 css—flex布局(语法篇)

文章目录一.引入flex布局二、Flex 布局是什么?三、基本概念四、容器的属性五、项目的属性一.引入flex布局1.布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。 它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。2.Flex 布局 (1). 简便、完整、响应式地实现各种页面布局。 (2). 它已经得到了所有浏览器的支持。二、Flex 布局是什么?Flex( Flexible Box),意为"弹性布局",用来为盒

2020-10-18 10:53:17 211

原创 Vue—vue的组件

文章目录1.组件化思想2.使用组件的基本步骤3.全局组件和局部组件4.父组件和子组件1.组件化思想1.组件化思想 :我们将一个完整的页面分成很多个组件,每个组件都用于实现页面的一个功能块。 (每一个组件又可以进行细分) 将一个页面拆分成一个个小的功能块,每个功能块完成属于自己这部分独立的功能, 那么之后整个页面的管理和维护就变得非常容易了。2.组件化思想的应用 :有了组件化的思想,在之后的开发中就要充分的利用它, 尽可能的将页面拆分成一个个小的

2020-10-14 23:25:07 97

原创 vue双向绑定,指令v-model

文章目录1.v-model指令2.v-model的原理3.在radio(单选框)、checkbox(复选框)、select(选择框)中使用1.v-model指令1.v-model指令 :Vue中使用v-model指令来实现 表单元素和数据的双向绑定。 表单控件是很常见的,特别是对于用户信息的提交,需要大量的表单。2.v-model指令实现:表单元素和数据的双向绑定 特点: 1.之前是用Mustache语法将数据在元素中显示,现在是用v-model将数据绑定在属性

2020-10-14 13:24:23 782

原创 vue的循环遍历,指令v-for

文章目录1.循环遍历2.v-for遍历数组3.v-for遍历对象4.v-for使用中添加key1.循环遍历1.循环遍历: vue的循环遍历用v-for,语法类似于js中的for循环 当我们有一组数据需要进行渲染时,我们就可以使用v-for来完成。2.v-for使用格式: 格式为:v-for = item in items (遍历items中的数据)2.v-for遍历数组1.v-for遍历数组 用v-for指令基于一个数组来渲染一个列表。

2020-10-13 12:09:32 2062

原创 vue的条件判断,指令v-if、v-show

文章目录1.vue的条件判断2.v-if和v-else的结合使用3.v-if、v-else和v-else-if的使用4.指令v-show的使用5.用户切换案例1.vue的条件判断1.vue的条件判断: v-if、v-else-if、v-else,这三个指令与JS的条件语句if、else、else if类似。 Vue的条件指令可以根据表达式的值在DOM中渲染或销毁元素或组件。2.指令v-if :可以用v-if指令的条件(判断)值来决定DOM的元素是否渲染出来;3.使用方法:

2020-10-13 11:01:22 2772

原创 vue的事件监听,指令v-on

1.事件监听:在前端开发中,我们需要经常和用户交互。这个时候,我们就必须监听用户发生的事件,比如点击、拖拽、键盘事件等等2.在Vue中使用v-on指令来监听事件指令v-on介绍:作用:绑定事件监听器缩写:@预期:Function | Inline Statement | Object参数:event...

2020-10-12 23:20:50 1247

原创 vue的计算属性computed

文章目录1.计算属性基本使用2.计算属性的setter和getter3.计算属性和methods的对比(缓存)1.计算属性基本使用1.引入:模板内(插值数据)的表达式非常便利,设计它们的初衷是用于简单运算的。 但如果在模板中放入太多的逻辑会让模板过重且难以维护。 所以,对于任何复杂逻辑,我们都可以使用计算属性。 2.计算属性 :当模板{{ }} 里面的插值比较麻烦时,可以将数据放到计算属性,然后用该计算属性。 计算属性是放在v

2020-10-10 12:32:06 217

原创 vue动态绑定属性,指令v-bind

文章目录1. v-bind指令介绍2.v-bind的基本使用1. v-bind指令介绍1.插值操作主要作用 :将Vue实例中的数据插入到我们模板的内容当中,并改变data可以动态改变显示。 2.动态绑定属性 :除了内容需要动态来决定外,元素的某些属性我们也希望动态来绑定。 比如,动态绑定a元素的href属性、动态绑定img元素的src属性。 Mustache双括号语法,只能在内容插值里使用,属性值是不可以用的 <img s

2020-10-08 22:04:04 12875

原创 vue的插值操作-vue指令(插值修饰)

文章目录1.插值操作2.插值操作—Mustache3.插值操作—指令v-once1.插值操作插值操作:如何将vue实例中data里面的某个值,插到页面DOM元素上进行显示。2.插值操作—Mustache 1.Mustache (胡子/胡须) :可以通过Mustache语法(也就是双大括号{{}})来进行插值操作; 数据绑定最常见的形式就是使用“Mustache”语法的文本插值 2.Mustache语法,不仅仅可以直接写变量,也可以写简单的表达式<scrip

2020-10-08 17:48:57 685

原创 认识vue

文章目录1.Vuejs安装方式2.Vue.js初体验3.MVVM模型4.对象options5.Vue的生命周期1.Vuejs安装方式Vue的安装方式有3种 第一种、下载和引入 1.下载好vue.js框架; 官网中下载 (有开发环境版本和生产环境版本(即未压缩版和压缩版),开发过程中用开发环境版本) 2.下载好后用 <script> </script>标签引入; (类似于引入jQuery) 第二种、

2020-10-08 17:04:25 118

原创 JavaScript(ES6)—Promise对象

文章目录1.promise前言1.promise前言1.什么是js的同步和异步? 答:js是单线程的 ====》一条流水线 同步异步的差别在于这条流水线上各个流程的执行顺序不同; 同步:按照主线程中程序排队的顺序,来一个个执行, 前一个执行完才会执行后一个; 异步:主线程中的某些程序任务,可先不执行放在队列中,而去执行下个任务; 如:定时器可放在队列中,等后面执行好后,再回头去执行;简单理解为:改变程序正常执行顺序的操作就为异步操作;2.常见的异步

2020-10-08 09:30:36 83

原创 JavaScript(ES5)—小内容汇总

文章目录1严格模式1严格模式1.理解: *除了正常运行模式,ES5添加了第二种运行模式为:严格模式; *严格模式是js在更严格的语法条件下运行; 2.目的/作用 *消除js语法的一些不合理、不严谨之处,减少一些怪异行为; *消除代码运行的一些不安全之处,为代码的安全运行保驾护航; *为未来新版的js做好铺垫;3.使用 *在全局或函数的第一条语句定义为 "use strict"; *如果浏览器不支持,只解析为一条简单的语句,没有任何副作用;

2020-10-08 09:25:39 133 1

原创 JavaScript(ES6)—小内容汇总

文章目录1.变量的解析赋值2.模板字符串1.变量的解析赋值变量的解构赋值: (解析结构,给对应的变量赋值)1.理解 :从对象或数组中提取数据,并赋值给对应的变量(多个);2.对象的解构赋值: let{n,age} = {n:"tom" ,age:12}; 解析对象,则以对象{ }的形式来接收; 3.数组的解构赋值: let[a,b]=[1,"ment"]; 解析数组,则以数组[ ]的形式来接收; 4.用途 :给多个形参赋值;

2020-10-06 17:41:58 145 1

原创 WebStorm2018.3.2激活,学习介绍

我之前用的开发软件一直都是WebStorm,但试用期30days之后就比较不友好了,因为不想买,所以之前也弄了好久最后终于用打补丁的方式弄好了。废话不多说,直接上步骤:1.下载补丁:链接:https://pan.baidu.com/s/15J6hyXd0bPV3Yg_aAOWNTA提取码:ghg4复制这段内容后打开百度网盘手机App,操作更方便哦2.将下载好的补丁放在安装webstorm目录的bin文件下,如下所示:3.找到bin文件中的这两个文件webstorm64.exe.vmopti

2020-10-06 17:23:46 289 1

原创 JavaScript(ES6)—箭头函数

文章目录1.箭头函数作用2.箭头函数基本语法3.箭头函数的特点1.箭头函数作用作用:定义匿名函数function (){} ——> ()=>{} 参数、函数体2.箭头函数基本语法 *没有参数: ()=>console.log('xxx') *一个参数: i=>i+2 *大于一个参数 : (x,y)=>x+y写法规则:1.箭头函数的参数可以一直加(),但只有一个参数时,可加可不加。2.箭头函数的函数体可以一直加{ },但

2020-10-06 17:13:30 1084 2

原创 JavaScript(ES6)—let与const关键字

文章目录1.let关键字2.const关键字1.let关键字1.let关键字 作用:与var类似,用于声明一个变量 特点: 1.在块作用域内有效(es6中有了块级作用域) 2.不能重复声明 3.不会预处理,不存在变量提升 应用: *循环遍历监听 *使用let取代var是趋势;<script type="text/javascript"> let username="kobe"; let user

2020-10-06 00:04:42 109 1

原创 JavaScript—闭包

文章目录1.引入闭包2. 理解闭包1.引入闭包js中有两大神兽,一个是原型对象,一个是闭包 进行一个小练习:点击某个按钮,提示“点击的是第几个按钮”; <button>测试1</button> <button>测试2</button> <button>测试3</button> <script type="text/javascript"> var btns=document.

2020-10-05 09:32:34 160 1

原创 JavaScript—作用域与作用域链

文章目录1.作用域2.作用域与执行上下文3.作用域链1.作用域 1. 理解: *作用域理解为一块"地盘",一个代码段所在的区域; *它是静态的,在编写代码时就确定了; 2.分类: *全局作用域 *函数作用域 *ES5中没有块作用域(到ES6中才有) 3.作用: *隔离变量,不同作用域下同名变量不会有冲突;```handlebars<script type="text/javascript"> if(true){

2020-10-05 09:14:40 111

原创 JavaScript—执行上下文和执行上下文栈

文章目录1.变量提升与函数提升2.执行上下文3.执行上下文栈1.变量提升与函数提升1.变量声明提升: *通过var定义(声明)的变量,在定义语句之前就可以访问到 *访问的值为:undefined; 2.函数声明提升: *通过function声明的函数,在函数代码之前就可以直接调用 *访问的值为:函数定义<script type="text/javascript"> var a=3; function fn (){ console.log(a);

2020-10-05 00:05:20 68

原创 JavaScript—构造函数、原型对象和原型链

文章目录1.构造函数2.原型对象3.原型链:4. 扩展方面5.instanceof的判断6.练习1.构造函数 构造函数和普通函数的区别: 1.构造函数的函数名习惯上首字母大写。 2.构造函数需要new关键字来调用。构造函数为: function Person(name,age,gender){ this.name=name; this.age =age; this.gender=gender; this.text=function (){

2020-10-04 00:05:40 82

原创 JavaScript——this篇

12

2020-10-03 22:31:46 108

原创 github中加入图片方法、以及解决图片不能正常显示的问题

GitHub中上传图片:1.2.选择一张本地图片3.上传一张本地图片后,进入上传的图片中,赋值这张图片在url中的地址:https://github.com/liufunan/super-mall/blob/master/pone.jpg5.引入图片然后在.md的文件夹中,引入要使用的图片,用下面这种格式引入:! [ 描述 ] ( 图片地址 )这样保存后打开该.md的文件即可显示该图片。注意:有可能会出现引入图片后不能正常显示的问题。解决方法:1.C:\Windows\S

2020-09-26 17:35:39 1514

原创 本地项目免费在远程服务器部署

前言:自己买服务器肯定是最好的,访问速度也很快,不想买的也可以使用Sunny-Ngrok中免费的,不过访问速度会慢一点,但是用于测试自己项目还是可以的,问题不大。正文:1.打开一个我自己的本地项目 ,能够看到这里的localhost就是本地的访问。2.搜索http://www.ngrok.cc/ ,注册登录后进入到主页,点击隧道管理-》开通隧道 ,这里有的要钱,有的免费,可以直接找这个免费的即可。3.立即购买后,按照自己情况填写信息,隧道名称可以随便填,后面两个可以先不管。4.完成后,在隧

2020-09-26 11:34:27 571

原创 本地项目在Window下部署

本地项目在Window下部署:将自己的电脑作为服务器-》window-》nginx1.下载nginx 官网为https://nginx.org (也可以去我网盘中获取)链接:https://pan.baidu.com/s/1XECvlIz8MgueDPrTWc7MYg提取码:3i6f方法1:*解压nginx 的压缩包 -》为nginx文件夹-》双击文件下nginx.exe -》则是运行了nginx服务器。* 检查是否运行了nginx服务器 -》则在网站中访问localhost即可查看

2020-09-26 11:08:02 497

空空如也

空空如也

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

TA关注的人

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