- 博客(16)
- 收藏
- 关注
原创 对React生命周期的理解
React的生命周期 挂载卸载过程 constructor() 初始化state或者进行方法绑定 在组件挂载之前会调用它的构造函数,它接受两个参数:props和context,当想在函数内部使用这两个参数时,需使用super()传入这两个参数。 注意:只要使用了constructor()就必须写super(),否则会报出this指向错误 在react中,构造函数仅用于以下两种情况: 通常给t...
2020-04-19 21:08:24
180
原创 改变this指向的三种方法
更改this指向的三个方法 <script> function box(a, b) { console.log(this, a, b) } /* // 方法一 bind 不会自动调用函数 let obj ={name:'小明'} ...
2020-04-14 21:27:33
283
原创 vue-router的简单使用
安装 cnpm install vue-router -S 或 yarn add vue-router -S 引入,如果是在脚手架中,引入VueRouter之后,需要通过Vue.use来注册插件 router/index.js文件 import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) 创建route...
2020-03-29 20:35:11
204
原创 对vue生命周期的理解
什么叫生命周期? 组件从创建到销毁的一系列过程叫做组件的生命周期 vue在整个生命周期里面提供了一些函数,可以在内部实现一些业务逻辑,并且这些函数会在一些特定的场合下去执行. 组件的生命周期钩子函数大致可以分为三个阶段:初始化、运行中、销毁 初始化阶段:beforeCreat created beforeMount mounted 运行中阶段:beforeUpdate updated...
2020-03-24 19:40:18
165
原创 对vue虚拟dom的理解
1为什么使用虚拟dom 因为在开发中,操作原生dom是非常消耗性能的,如果某个节点发生改变时,整个容器中的内容都要被重新渲染。而虚拟dom可以很好地解决这个问题。如果一次操作中有10次更新DOM的操作,虚拟DOM不会立即操作DOM,而是将这10次更新的diff内容保存在本地的一个js对象中,最终将这个js对象一次性attach到DOM树上,通知浏览器去执行绘制工作,这样可以避免大量的无谓的计算量。...
2020-03-23 21:39:25
794
原创 vue的双向绑定原理
vue内部通过数据劫持&发布订阅模式实现数据的双向绑定,通过Object.defineProperty方法对所有的数据进行数据劫持,就是给这个数据动态的添加了getter与setter方法.在数据变化的时候发布消息给订阅者(Watcher)触发相应的监听回调. let obj = {} let middle = 1 Object.defineProperty...
2020-03-18 21:25:51
92
原创 node + mongodb查询分页
安装 npm i mongodb -S 代码 // 1.引入 let mongodb = require('mongodb') const express = require('express') let app = express() app.listen(3000, () => { console.log('3000端口正在监听中...') }) // 创建接口 ...
2020-03-16 20:55:02
655
1
原创 使用form表单向node上传文件
html代码 <form action="http://localhost:3000/api/reg" enctype="multipart/form-data" method="post"> <input type="file" name="icon"> <input type="submit" value="提交"> <...
2020-03-12 19:28:48
280
原创 封装一个bodyParser中间件
// 封装一个 body-parser 中间件 // 定义一个函数 // 引入querystring模块 let querystring = require('querystring') // 拿到post请求的参数 // let bodyParser = ()=>{ // return (req,res,next)=>{ // let str = '' /...
2020-03-11 17:39:35
202
原创 npm的指定
全局安装 安装到电脑系统环境下,在电脑任何位置都可以使用 npm i 包名 -g 安装 npm uninstall 包名 -g 卸载 安装到项目环境 只能在当前目录使用 npm init 初始化npm管理文件 pacgage.json 项目依赖 只能在当前项目下使用,上线了也需要这个依赖 npm i 包名 --save npm install...
2020-03-10 19:53:06
441
原创 nodejs处理请求
let http = require('http') let fs = require('fs') let url = require('url') let querystring = require('querystring') let app = http.createServer((req,res)=>{ // 排除 /favicon.ico 的请求 if(req.ur...
2020-03-09 21:55:28
364
原创 js知识点总结
js知识点总结 php操作数据库 建立和数据库的连接 $link = mysqli_connect('localhost','root','root','数据库名字'); 执行sql语句 $res = mysqli_query($link,'执行的sql语句'); 解析结果 mysqli_fetch_assoc(要解析的内容) //解析一条内容 my...
2020-03-08 17:06:09
133
原创 单选全选按钮事件
<input type="checkbox" class="checkAll">全选 <input type="checkbox" class="checkSingle"> 选项一 <input type="checkbox" class="checkSingle"> 选项二 <input type="checkbox" clas...
2020-03-05 22:24:09
175
原创 分页器的使用
总结一下最近两天写代码用到的知识点 localStorage的运用 主要为了实现跨页面通讯,在一个页面存储进去,在另一个页面获取渲染 $('.nav_list > ul').on('click', 'li', function () { let pid = $(this).data('id') let data = {} //根据id在数组中找到对应的数据 for (let i ...
2020-03-04 22:12:10
164
原创 项目运用到的知识点总结
最近在模拟电商项目,把用到的知识点总结一下. Swiper 插件 该插件主要运用在轮播图等等一类的滑动效果页面上. 自己写的json文件如何去请求? jQuery中可以直接对json文件发起请求,请求地址是该json文件的目录,将dataType设置为json即可 $.ajax({ url:'../lib/list.json', dataType:'json', suc...
2020-03-02 21:47:16
172
原创 了解js的闭包
我们知道javaScript中变量可以是局部变量或者全局变量。函数可以访问由函数内部定义的变量,也可以访问函数外部定义的全局变量。但是我们在外部该怎么去访问到函数内部定义的函数呢,由此,我们就需要用到闭包。 首先:我们要知道闭包形成有三个必要条件: (1) 一个函数A内部直接或者间接返回另一个函数B (2) 函数B内部使用着函数A的私有变量 (3) 函数A外部有变量引用着函数B function ...
2020-02-23 16:15:27
117
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅