自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 浏览器知识

浏览器内核简要说明一个完整的浏览器包含浏览器内核和浏览器的外壳(shell)。浏览器内核又可以分为两部分:渲染引擎(Layout Engine或Rendering Engine)和JS引擎。由于JS引擎越来越独立,内核就倾向于只指渲染引擎。浏览器构成浏览器一般由七个模块组成,User Interface(用户界面)、Browser engine(浏览器引擎)、Rendering engine(渲染引擎)、Networking(网络)、JavaScript Interpreter(js解释器)、

2020-09-07 22:38:03 461

原创 web标准

Web标准是W3C组织和其它标准化组织制定的一套规范集合,包含了一系列标准:HTML、XHTML、Javascript以及CSS等。Web标准的目的是创建一个统一的Web表现层的技术标准,以便通过不同的平台向用户显示内容。目前web标准是唯一的跨平台和跨客户端技术。Web标准由三大部分组成的标准集:结构、表现、以及行为。结构:用于结构化的Web标准化技术主要由:Html、Xhtml、Xml。表现:主要指CSS。行为:表现行为的标准技术主要有:DOM和Javascript。Dom是一种让浏览器和Web

2020-09-07 21:31:05 515

原创 普通函数和箭头函数

一、普通函数://具名函数function func(){ //code}//匿名函数let func = function(){ //code}代码说明:(1).第一个是具名函数,使用严格的函数声明语法创建。(2).第二个是匿名函数,它的本质是声明一个变量并赋值为一个匿名函数对象(函数没有名称)。二、箭头函数:箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种只包含一个表达式,连{ … }和return都省略掉了。还有一种可以包含多条语句,这时候就不能省略

2020-08-28 15:40:01 297

转载 ES发展版本

https://www.w3school.com.cn/js/js_versions.asp

2020-08-28 14:59:31 590

转载 跨域问题三 axios跨域解决

1.服务器端设置跨域header(“Access-Control-Allow-Origin:*”);header(“Access-Control-Allow-Headers:content-type”);header(“Access-Control-Request-Method:GET,POST”);2.可以自己设置一个代理服务器,使用proxyTable首先在config/index.js 里面找到proxyTable :{} ,然后在里面加入可复制代码: "/api":{

2020-08-28 11:01:11 188 1

转载 跨域问题二

一、跨域解决1.JSONP采用script标签,此处前端代码示例: <button id="btn">点击</button> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script> <script> $('#btn').click(function(){ var frame = document.createElement('

2020-08-28 10:52:30 60

原创 跨域问题一

一、什么是跨域域名:www.baidu.com协议:http https端口:8080跨域是指从一个域名去请求另一个域名的资源,严格来说,只要域名,协议,端口任何一个不同,就视为跨域。参考:https://wenwen.sogou.com/z/q187252167.htm二、跨域出现原因1.同源: 域名 端口 协议三者全部相同2.同源策略限制的表现:① cookie、LocalStorage和Index DB 无法读取② Dom无法获得③ ajax请求不能发送为了网络安全,浏览

2020-08-28 10:26:31 98

原创 JS判断是否是数组

方法一:Array.isArray()把我们要判断的对象传入即可。但此方法IE8和IE8-不支持。方法二:不存在 Array.isArray(),则自己创建该方法。if (!Array.isArray) { Array.isArray = function(arg) { return Object.prototype.toString.call(arg) === '[object Array]'; };}参考的是 https://developer.mozilla.o

2020-08-26 13:46:29 128

原创 MVC和MVVM的个人理解

MVC是后端开发的一个分层概念。M:model层,负责操作数据库,处理数据的CRUDV:view层,也就是前端页面。C:controller层 业务逻辑层,比如一些路由,登陆,注册等业务MVVM:是前端视图层的分层开发概念把每个页面分成了M V VMV: html结构M:保存的是每个页面的单独数据VM:结构和数据之间的调度者,提供数据的双向绑定,常用的前端框架帮我们做了这部分工作。上图:在网上看到了一个教学视频,讲的不错,看完以后自己整理总结的。视频分享:https://haokan

2020-08-22 10:19:53 119

原创 Vue路由分文件拆分管理

这段时间做的商城系统,相对也是比较复杂的,路由比较多,直接都写在路由入口文件index.js中,后期维护起来头疼,我们可以根据不同的模块来创建不同的路由子文件,在自文件中维护各个模块的路由,引入到index.js中就可以了。路由子文件sellerRoute.jsconst sellerRoute = [ { path: '/seller/lanchGoods', name: 'LanchGoods', component: () => { return import('@/pa

2020-08-20 18:34:49 222

原创 vue el-form多规则rules验证

rules使用计算属性返回:computed中:computed: { rules: function() { if (this.form.itemType) { return this.rules1 } else { return this.rules2 } } }data中: data() { return { rules1: { accno: [{ required

2020-08-20 18:06:13 2449

转载 element 表单验证清除问题

属于一个用户体验问题:表单验证显示的过程中,用户切换不同的选项卡,要使用不用的表单验证,就需要把前面的验证清掉。在切换的事件下加入:// 清除表单校验的提示if (this.$refs['XXX']) { // 延时执行 this.$nextTick(function () { this.$refs['XXX'].clearValidate(); })};感谢原博主整理。...

2020-08-20 17:26:40 808

原创 element中el-select手动清除选中再次选择不显示的问题

使用的是强制刷新的方法: this.$forceUpdate()在切换不显示的el-select的元素上绑定@change=“changeValue”changeValue(){ this.$forceUpdate()}

2020-08-20 17:22:30 2735

原创 vue-quill-editor上传内容由于图片是base64的导致字符太长的问题解决

直接上代码吧结构:<div style="margin-top:30px"> <el-card style="height: 610px;"> <!-- <quill-editor v-model="documentInfo.content" ref="myQuillEditor" style="height: 500px;" :options="editorOption"> </quill-editor> -

2020-08-20 17:13:45 1114

原创 axios的几种携参请求方法

自己使用下来,感觉post,put 差不多axios.post('http://127.0.0.1:8080/test/login', { name: "admin", pwd: "123456" }) .then(function (response) { console.log(response); }) .catch(function (error)

2020-08-18 14:57:07 116

转载 Vue的几种跳转总结

一:this.$router.push({path:'/AddDocType',query:{id:row.id}}) 参数会显示在URL上:http://localhost:8080/AddDocType?id=1设置路由就是/AddDocType通过this.$route.query.id获取id二:this.$route.push({path:`/AddDocType/${id}`})http://localhost:8080/AddDocType/1设置路由就是/AddDocTy.

2020-08-18 13:52:16 204

原创 Vue中引入公共方法

公共方法一般是写在common文件夹下的util.js或者store的util.js/common.js中的。util.js中两种定义公共函数的方式:一:function myFun(){ }export { myFun}二:export function myFun(){ }在使用的时候,既可以在用到的页面直接引用import {myFun } form './util.js'myFun()也可以放在main.js中main.js:import common fr

2020-08-18 13:38:09 1969

原创 warning in ./src/components/Public/yearSelectCell.vue 报错解决

warning in ./src/components/Public/yearSelectCell.vueThere are multiple modules with names that only differ in casing. //有多个模块同名仅大小写不同This can lead to unexpected behavior when compiling on a filesystem with other case-semantic. //这可能导致在一些文件系统中产生

2020-08-18 12:06:53 1611

转载 Vue+element 动态增加表单并进行表单验证

vue里面点击加号增加一行,简单功能是这样,后面还有验证,这部分参考https://segmentfault.com/q/1010000011050620<div v-for="(v,i) in list" :key="v.id"> <input type="text" v-model="v.a"> <input type="text" v-model="v.b"></div>data(){ list:[ {a:'',b:''},.

2020-08-18 12:04:07 1181

转载 cookies,sessionStorage和localStorage的区别

共同点:都是保存在浏览器端,且同源的。区别:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。sessionStorage和loc

2020-08-18 11:41:30 143

原创 Vue中watch监听

监听一个对象:(对象中所有的属性变化的时候都会执行handler)watch: { obj: { handler(newValue, oldValue) { // ... }, deep: true, //深度监听 immediate: true //首次绑定watch时,立即执行 } } 监听对象的某个属性watch: { 'obj.name': { handler(newValue, oldValue)

2020-08-18 11:30:20 61

原创 Angular1.x知识点总结

从去年五月份开始,公司项目一直都用angular1.x,直到最近7月份,开始了新的项目换用了Vue,今天就把angular1.x的知识点总结一下。angular.forEachng-if ng-show$scope$rootScope 全局变量ng-appng-initng-bindng-modelng-controllerng-repeatng-ifng-selectng-changeng-click自定义模块angular.module(‘myModule’,[ng

2020-08-10 22:29:26 126

原创 var let const

var 有变量声明提升let 声明的变量可以改变比如for循环的let I=0;i<10;i++const 定义变量的时候一般要赋值,定义之后这个常量不可以被重新定义,赋值。但是可以在自身基础上改变,比如数组的增删改,因为本身指向的地址没有改变。简单数据类型(数值,字符串,布尔值):值保存在变量指向的那个内存地址,因此等同于常量。复合类型的数据(对象和数组):变量指向的是内存地址,保存的是一个指针,const只能保存这个指针地址是固定的,至于他指向的数据结构是不是可变的,就完全不能控制了。

2020-08-10 22:12:22 79

原创 跳出循环的几种方法

const arr =[{ id:1, name:'yql', age:17 },{ id:2, name:'yeah', age:16 },{ id:3, name:'ye', age:17 }] const arr_ =[] //1 return 方法 这种方法并不能跳出forEach循环,跳出的是当前次循环 arr.forEach(function(value){ if(value.name == 'yeah') { return; }

2020-08-10 21:32:20 778

原创 footer始终置于页面底部

我们做网站,底部一般会有版权信息,当页面内容高度不够时,版权部分就不是总在底部了。利用flex布局,达到我们的要求。但我们在Vue项目中,发现没有效果。需要我们去App.vue中给id名为app的元素添加样式。position:absolute;top:0;right:0;bottom:0;left:0;参考:https://blog.csdn.net/hb9278/article/details/96433386...

2020-08-08 18:01:43 199

原创 数组的合并去重

网上的方法很多,我自己常用的方法是先合并再去重。1.合并数组 concatvar arr1 = ["ab","bc","de","fg"];var arr2 = ["ml","kg","ww","bc","am"];var arr3 = arr1.concat(arr2);console.log(arr3) 控制台输出:2.去重for(var i=0;i<arr3.length;i++){ for(var j=i+1;j<arr3.length;j++){ if(

2020-08-08 15:26:28 280

原创 Vue初始化项目的时候遇到的一个小坑

1.拉完代码,项目死活启动不起来,说是缺少了很多依赖,npm install 报错2.然后,对缺少的依赖单独install ,就很正常的安装依赖操作,发现安装失败3.查阅网上各种方法,抱着试一试的态度改用cnpm$ npm install -g cnpm --registry=https://registry.npm.taobao.org4.然后居然可以了(捂脸)项目启动成功,具体原因我没有深究,看原博主是怀疑vue-cli脚手架的原因。感谢博主分享:https://blog.csdn.ne

2020-08-08 14:44:56 223

原创 Vue使用swiper遇到的一个小坑

1.已经执行过 npm intall swiper --save 但是在npm run dev 的时候仍然报错2.报错信息如下:提示我们swiper没有安装.3. 然后进行疯狂的install 发现并没有用,最后查阅了网上的资料,发现是swiper版本问题4.找到package.json 和 yarn.lock ,我发现自己的问题是package.json 里面swiper的版本是6.0.0yarn.lock的版本是4.1.3,把package.json的版本改成yarn.lock里一样5.i

2020-08-08 14:33:09 258

转载 nvm安装后出现‘node‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

转载:https://blog.csdn.net/Cynthia_Wiki/article/details/99571750遇到这个问题找了很久,最后按照本文一步一步操作,解决问题。感谢原作者整理分享。解决:1.找到nvm安装所在位置,新建一个空的nodejs文件夹2 window+r —> sysdm.cpl —> 高级 —>环境变量3.将下图中两个位置的地址改成刚刚新建的nodejs空文件夹所在的位置。4.一般情况下,nvm安装后都是会自动添加Path,没有的话就自己添加

2020-07-20 16:22:51 2599 3

原创 JS获取两个日期之间相差的天数

function getDaysBetween(dateString1,dateString2){ var startDate = Date.parse(dateString1); var endDate = Date.parse(dateString2); var days=(endDate - startDate)/(1*24*60*60*1000); return days;}

2020-06-23 13:57:22 1750

原创 Angular中设置想要达到元素hover效果的API

在Angular4中有mouseenter和mouseleave两个事情,具体用法:<span ng-mouseenter="show = true" ng-mouseleave="show = false"> 内容……</span>或者<div (mouseenter)="event1()" (mouseleave)="event2()"></div>

2020-06-23 13:55:56 360

转载 使用git切换分支

第一步:先找到地址git clone 下代码(输入git地址)中间需要输入你的Git账号和密码:第二步:git brach 查看分支类型第三步:git branch -a 查看所有分支类型第四步:git checkout + “分支名字”————————————————版权声明:本文为CSDN博主「马优晨」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附...

2020-04-22 17:40:00 535

原创 苏州两日游

带的物品:雨伞 防晒霜 手机 充电器 身份证 口罩 湿巾 消毒液可以备点住宿:乐桥附近(提前预定下)天气:现在看天气预报是5.1-5.4晴天,5.5有雨假设是:第一天上午在上海出发,第二天傍晚苏州出发回上海。上海出发,到苏州车程0.5~1小时 ,住宿建议乐桥附近 ,园林吃饭逛街也在这附近,比较方便。第一天,到苏可以休息下然后直接去玩拙政园、狮子林(不拍很多照的话,一共2-3小时应该可以...

2020-04-17 16:31:17 214

转载 JS计算时出现小数位数太多情况

乘法:function accMul(arg1,arg2){ var m=0,s1=arg1.toString(),s2=arg2.toString(); try{m+=s1.split(".")[1].length}catch(e){} try{m+=s2.split(".")[1].length}catch(e){} return Number(s1.replace(".",...

2020-04-08 15:19:21 654

原创 angular自定义指定添加自定义参数

angular.module('future_saleOrder',[]) .directive('futureSalerOrder', [function () { return { restrict: 'AEC', scope:{ data:'=', item...

2020-04-08 15:14:46 662

原创 Angular的ng-options的value值是错误的

在使用angular时,如果用js原生或者jQuery去获取select的option的value值,会发现获取到的是索引值,会出现错误。参考博客:https://segmentfault.com/q/1010000004305247/a-1020000004305320...

2020-04-08 13:48:24 315

转载 js中经常看到‘!!’的作用

var o={flag:true}; var test=!!o.flag; //等效于 var test=o.flag||false; alert(test);由于对null与undefined用!操作符时都会产生true的结果,所以用两个感叹号的作用就在于,如果明确设置了o中flag的值(非 null/undefined/0""/等值),自然test就会取跟o.flag一样的...

2019-11-21 19:50:34 120

原创 关于this指向的一道题目

尝试实现注释部分的 JavaScript 代码, 可在其他任何地方添加更多代码。var Obj = function(msg) { this.msg = msg; this.shout = function () { alert(this.msg) } this.waitAndShout = function() { // 隔五秒钟...

2019-11-11 16:38:32 175

原创 js中的function fn(){}和var fn=function(){}

函数声明:funName()//正常执行function funName(){ //code}函数表达式:funName() //报错 funName is not a functionvar funName=function(){ //code}解析器在向执行环境加载数据时,对这两种是有区别的,解析器会率先读取函数声明,以确保在执行任何代码之前可以访...

2019-11-08 17:50:01 1361

原创 一道js题目

头条的视频网站上支持了弹幕,假设一个视频有很多弹幕,弹幕的数据是一个数组,格式定义如下:[{time: Number,content: String},{time: Number,content: String}…](其中 time 表示时间,content表示弹幕内容),那么如何快速定位到某个时间点的弹幕,请编码实现(不使用数组的 sort 方法)其实我不大读懂题目。v...

2019-11-08 15:35:11 110

空空如也

空空如也

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

TA关注的人

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