自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python 列表常用方法

python的列表和js的数组是相似的。

2023-09-14 16:28:18 110

原创 vue2 若依项目,使用plotly.js-dist图表库,将数据图表一键导出为图片

首先需要拿到你生成数据图表的数据, 然后赋值给一个数组,数组需要在data定义,还需要去重。单个下载可以点击数据图表的照相机,可以实现单个下载。此代码适用的场景是一个页面有多个数据图表。

2023-07-06 10:57:15 1061

原创 mvc 、mvp、 mvvm

低耦合,视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的”View”上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向,各部分之间的通信,都是双向的,View 与 Model 不发生联系,都通过 Presenter 传递。:接收View层传递过来的指令,选取Model层对应的数据,进行相应的操作,用于控制应用程序的流程,及页面的业务逻辑。

2023-02-23 15:51:02 365

原创 获取实时天气

4.可将获取到的天气信息保存至本地缓存再其他页面拉取渲染,注意要JSON.stringify 转化为JSON字符串,拉取的时候再用JSON.parse将JSON字符串转化为对象。cityid、city和ip参数3选一提交,如果不传,默认返回当前ip城市天气,cityid优先级最高。如: 119.545023 (需额外开通lbs权限, 500/年, 2000/5年)中的index.html中 使用script标签 引入生成的key和秘钥。默认百度坐标, 如使用高德坐标, 请传参: gaode。

2023-02-22 12:31:35 458

原创 async、await使用

2.同步代码编写方式: Promise使用then函数进行链式调用,一直点点点,是一种从左向右的横向写法;async/await从上到下,顺序执行,就像写同步代码一样,更符合代码编写习惯;它是把异步请求变成同步执行的.async放在最近函数外调用,返回的是promise对象.没有catch错误处理,需要用js原生的try,catch进行错误处理 */1.方便级联调用:即调用依次发生的场景;

2022-10-19 20:11:31 127

原创 Promise用法

pending 初始状态,进行中 fulfilled 成功状态,请求成功 了 rejected 失败状态,请求失败了 Promise的状态一旦改变,就不会再变,任何时候都可以得到这个结果,状态不可以逆,只能由 pending变成fulfilled或者由pending变成rejected。** 二.Promise内部要的是异步请求结果,ajax,定时器等-实际运用用它封装网络请求$.ajax(),wx.request()**

2022-10-19 20:07:59 166

原创 git基础

git push --set-upstream origin master(省略形式为:git push -u origin master) 或者先关联远程库 git remote add origin 仓库地址 然后每次提交用 git push origin master。2.查看公钥: cat ~/.ssh/id_rsa.pub ,查看后复制到自己的Git帐号的SSH设置中(!注意查看命令,要在git bash里才有效)5.最后克隆个仓库试下(!

2022-10-18 20:11:45 563

原创 diff算法

简单来说Diff算法就是在虚拟DOM树从上至下进行同层比对,如果上层已经不同了,那么下面的DOM全部重新渲染。diff算法就是进行虚拟节点对比,并返回一个patch对象,用来存储两个节点不同的地方,最后用patch记录的消息去局部更新Dom。当状态变更的时候,重新构造一棵新的对象树。然后用新的树和旧的树进行比较(diff),记录两棵树差异。把第二棵树所记录的差异应用到第一棵树所构建的真正的DOM树上(patch),视图就更新了。tag和key,两者都相同,表示相同节点,不再深度比较。

2022-10-18 17:20:42 299

原创 虚拟dom

运用patching算法来计算出真正需要更新的节点,最大限度地减少DOM操作,从而显著提高性能。是根据真是dom映射出来的一个虚拟dom, 其实就是用一个原生的JS对象去描述一个DOM节点,实际上它只是对真实 DOM 的一层抽象。相当于在js与DOM之间做了一个缓存,利用patch(diff算法)对比新旧虚拟DOM记录到一个对象中按需更新, 最后创建真实的DOM。Virtual DOM的优势不在于单次的操作,而是在大量、频繁的数据更新下,能够对视图进行合理、高效的更新。

2022-10-18 17:13:18 148

原创 vue2、vue3的响应式原理

用 object.defineProperty结合订阅者发布者模式进行数据劫持,并通过设置get和set方法对数据进行操作,设置值后在 get() 中向发布者添加该属性的订阅者,这里在编译模板时就会初始化每一属性的 watcher,在数据发生更新后调用 set 时会通知发布者 notify 通知对应的订阅者做出数据更新,同时将新的数据更新到视图上显示。因此vue2的响应式,通过数组方法(prop,push),或是删除,vue是不能监听的。2.描述符只有get和set,无法监听新增属性和删除属性的操作。

2022-10-18 16:59:20 544

原创 typescript基础

1.在空文件下 输入 tsc–init 会自动生成一个tsconfig.json配置文件。4.新建html文件 用script的src引入ts文件。2.vscode点击终端,运行任务,选中 ts 监视。1、ts添加了类型系统的js,适用于任何的规模。动态类型: 运行过程中执行类型检测 js。静态类型: 编译过程中执行类型检测 ts。### 与js的不同处###动态类型和静态类型的语言。

2022-10-04 10:18:42 167

原创 this 指向以及修改this 指向的方法

在我写代码的时候,通常情况下,我直接 写一个 let vm = this。.call ( this 的指向, 参数一,参数二 …

2022-10-02 08:17:28 136

原创 ES6新增………………重点

在一个文件里定义的变量,函数,类都是私有的,对其他文件不可见。promise有三种状态,进行中(pending),已完成(fulfilled),失败(rejected)(4).rejected()也会返回一个新的promise对象,该实例对象状态为rejected。(2).race()同样是将多个promise实例包装成一个新的promise实例。解构赋值语法是Javascript语法,将数组/对象中的值取出,赋值给新的对象。const声明变量是一个常量,必须有默认值,也会将当前代码块变成暂时的死区,

2022-10-02 08:08:48 501 1

原创 解决跨域的(详讲)

(1)后台改: 后台设置响应头 res.setHeader(‘Access-Control-Allow-Origin’,’ *')(2)jsonp (只适合get请求):不会阻止 script 标签的 src 属性的请求,前端写一个函数,后端返回函数的调用。(4).nginx反向代理。

2022-09-29 08:36:45 86

原创 ES6新增数据类型:Symbol

symbol 是 es6 新增的一个基本的数据类型,定义唯一值的;一般用于给对象添加私有属性。使用 :Object.getOwnPropertySymbols。3、如何获取 Symbol 添加的私有属性?1、symbol 的作用。2、symbol 的用法。

2022-09-28 11:08:52 97

原创 判断JS数据类型的方法

4、Object.prototype.toString.call( ) 可以判断任何数据类型。一般用于判断基本的数据类型,null 除外,判断 null 会返回 object;一般的数据类型和引用的都可以判断,但是 undefined 和 null 除外。一般用于判断引用的数据类型,判断引用数据类型返回 true。还可以判断引用数据类型中的 函数,返回 function。判断基本数据类型返回 false。

2022-09-28 11:07:18 170

原创 分割url(分割字符串)

多用于分享,写在main.js中,可以在页面进入之前拿到参数。

2022-09-28 10:59:59 1318

原创 axios发送请求

封装 axios 请求可以将 api 统一管理,使接口更清晰,方便代码的维护。1.下载安装 npm install axios --save。vue 内发起网络请求常用插件:axios fetch。1、在 src 文件夹中创建 request 文件夹。(2)、全局引入 在 main.js 中。拦截器有 请求拦截:开启加载动画,设置请求头。4、在发送请求页面引入使用。三、封装 axios请求。

2022-09-28 07:57:12 125

原创 js时间戳的简单介绍

【代码】js时间戳的简单介绍。

2022-09-25 22:43:03 356

原创 【vue解决跨域问题】

修改完配置文件要重新启动vue项目 不然代理不会生效。在vue根目录下创建出vue.config.js。在要发送前端请求的页面使用。

2022-09-25 22:39:47 238

原创 Vue的路由(导航)

vue有两种路由模式 :hash 和 history;默认是 hash 模式。只能使用 name 跳转,刷新的时候参数会丢失,不会显示到页面的 url 上。声明式导航:router-link to=" 要跳转的页面路径"编程式导航:this.$router.push()路由是指路径和组件的一 一 对应关系。4、vue 的路由传参数。3、路由(导航)的跳转。刷新的时候数据不会丢失。

2022-09-25 22:28:20 312

原创 Mixin 混入详讲

页面和混入js文件中定义相同的数值或方法只会显示在页面定义的数值和执行页面定义的方法,因为 混入中的函数先执行,页面的函数后执行,页面的函数会覆盖混入js文件中的函数。2、在 js 文件中 可共用的 选项API和生命周期函数 然后导出。而执行生命周期函数会先执行混入js文件中的生命周期函数。1、在 assets 文件夹中 新建 js 文件。4、在页面使用 (与data同级)3、在使用的页面引入。

2022-09-25 22:25:57 145

原创 组件通讯时使用 v-model

在父组件子组件标签上使用 v-model ,需在子组件上使用 : value=‘’ value ‘’ ,动态绑定 value 值,使用 @input = ‘’ input ‘’ 绑定 input 事件。父组件传递给子组件数据,子组件使用 props 接收,但是 props 是单向数据流,不能在子组件直接修改父组件传递给子组件数据,所以不能在子组件使用 v-model。

2022-09-25 22:23:25 190

原创 vue2组件通讯

7、provide inject 注入 在页面注入完成后,子组件,孙组件、、、都可以获取到这个值(但是在 vue 2 中不可以动态更新数据,在 vue 3 中可以,所以在 vue2 中一般用于传递常量 )6、$attrs 可以获取父组件的所有属性,但是如果该属性在 props 里面接收了,就获取不到了。3、$parent 子组件可以获取父组件的实例 (是一个 对象)1、vuex 将数据存入vuex中,成为公共的数据。

2022-09-25 22:21:45 75

原创 作用域以及闭包

【代码】作用域以及闭包。

2022-09-23 17:11:53 43

原创 vue的内置组件及 keep-alive的使用

【代码】vue的内置组件及 keep-alive的使用。

2022-09-23 10:32:22 141

原创 vuex的辅助函数(进阶)

【代码】vuex的辅助函数(进阶)

2022-09-22 10:54:01 648

原创 vue2生命周期

【代码】vue2生命周期。

2022-09-22 10:51:32 158

原创 vuex的高阶用法--命名空间(必学)

【代码】vuex的高阶用法--命名空间(必学)

2022-09-22 10:35:48 212

原创 vuex初识

【代码】vuex初识。

2022-09-21 13:46:16 68

原创 filter过滤器

【代码】filter过滤器。

2022-09-20 17:15:28 106

原创 vue2中解决数据更新视图不更新问题

【代码】vue2中解决数据更新视图不更新问题。

2022-09-20 17:10:45 896

原创 computed计算属性

【代码】computed计算属性。

2022-09-19 22:11:55 119

原创 watch事件监听

【代码】watch事件监听。

2022-09-19 21:58:08 221

原创 vue常用指令

v-pre 显示指令中原始信息,静态的内容不需要编译,可以加快渲染【跳过插值解析】v-html 可以把html的内容填充到标签中去,会解析标签 常用于渲染富文本。v-else 给 v-if 添加一个“else”块,必须跟在 v-if 之后。v-text 用于将数据填充到标签中去,作用类似于插值表达式 不会解析标签。v-once 执行一次性的插值【当数据改变时,插值处的内容不会继续更新】v-model 数据双向绑定。

2022-09-19 17:13:54 55

原创 正则表达式

很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求。所以我最近把开发中常用的一些正则表达式整理了一下,在这里分享一下。给自己留个底,也给朋友们做个参考。

2022-09-16 15:56:18 52

原创 ajax请求原理

【代码】ajax请求原理。

2022-09-16 11:46:46 129

原创 事件委托.

【代码】事件委托.

2022-09-16 11:45:17 45

原创 原生js绑定事件的三种方法

【代码】原生js绑定事件的三种方法。

2022-09-16 11:43:58 4852

原创 定时器使用及清除

【代码】定时器使用及清除。

2022-09-16 11:42:27 312

空空如也

空空如也

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

TA关注的人

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